Model: Rolling CatBoost 3d PH Platt 2% v1


Details

Unique Key
rolling-ph-cb-p2-seq3-platt
Current Version
1
Type
long
Description
None
End Point
None
Last Trained
April 5, 2025, 1:32 a.m.
Meta
tags: ['penny', 'original']
class: rolling
target: {'type': 'price_high', 'value': 1.02, 'duration': 3}
sequence: 3
classifier: catboost
calibration: platt-scaling

Last Metrics
April 4, 2025
[{'Feature': 'ticker_encoded_normalized', 'Importance': 0.1291863651665238}, {'Feature': 'weighted_authors_neutral_count_rolling_mean_3', 'Importance': 0.06891556821032034}, {'Feature': 'weighted_items_neutral_count_rolling_mean_3', 'Importance': 0.06705863694453794}, {'Feature': 'items_neutral_count_rolling_mean_3', 'Importance': 0.044647943640157964}, {'Feature': 'authors_positive_count_rolling_mean_3', 'Importance': 0.043699806017718515}, {'Feature': 'overall_sentiment_score_rolling_mean_3', 'Importance': 0.04125657136636232}, {'Feature': 'items_count_rolling_mean_3', 'Importance': 0.03983002035496834}, {'Feature': 'items_negative_count_rolling_mean_3', 'Importance': 0.03438329175458815}, {'Feature': 'authors_negative_count_rolling_mean_3', 'Importance': 0.028417646818495266}, {'Feature': 'items_positive_count_rolling_mean_3', 'Importance': 0.019735904257337837}]

Model Backtesting

All

Total Tests

35,160

# Pass

25,484

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

# Fail

9,676

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

Win Rate

72.5 %

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

Hit Rate

93.8 %

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

Avg Gain

8.1 %

Avg Performance Gain:
Average % Gain for each test defined by the theoretical buy-price v. sell-price difference.

© 2025 - PennyLoupe LLC. Austin, TX.

SunMonTueWedThuFriSat
293012345678910111213141516171819202122232425262728293031123456789
SunMonTueWedThuFriSat
303112345678910111213141516171819202122232425262728293012345678910
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 409.737 msec
System CPU time 7.770 msec
Total CPU time 417.507 msec
Elapsed time 1488.337 msec
Context switches 11 voluntary, 16 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)
domainLookup59 (+0)
connect59 (+135)
request194 (+2050)
response1960 (+284)
domLoading1982 (+-1743888311689)
domInteractive2558
domContentLoadedEvent2558 (+9)
loadEvent-1743888309707 (+0)

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 0x7f8df9cffec0>}
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,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding gzip, deflate, br, zstd
Cache-Control no-cache
Connection keep-alive
Host pennyloupe.com
Pragma no-cache
Sec-Ch-Ua "HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"
Sec-Ch-Ua-Mobile ?0
Sec-Ch-Ua-Platform "Windows"
Sec-Fetch-Dest document
Sec-Fetch-Mode navigate
Sec-Fetch-Site none
Sec-Fetch-User ?1
Upgrade-Insecure-Requests 1
User-Agent Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)

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/67
QUERY_STRING
REMOTE_ADDR 3.135.192.183
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_detail () {'id': 67} model_detail

No cookies

No session data

No GET data

No POST data

SQL queries from 1 connection

  • default 1069.75 ms (5 queries )
Query Timeline Time (ms) Action
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"."id" = 67
 LIMIT 21
SELECT ••• FROM "pl_model" WHERE "pl_model"."id" = 67 LIMIT 21
1.44

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_detail(680)
  model = Model.objects.get(pk=id)

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"."model_id" = 67 AND "pl_model_metrics"."status_id" = 10 AND "pl_model_metrics"."date" >= '2024-10-07'::date AND "pl_model_metrics"."date" <= '2025-04-05'::date)
 ORDER BY "pl_model_metrics"."date" DESC
SELECT ••• FROM "pl_model_metrics" WHERE ("pl_model_metrics"."model_id" = 67 AND "pl_model_metrics"."status_id" = 10 AND "pl_model_metrics"."date" >= '2024-10-07'::date AND "pl_model_metrics"."date" <= '2025-04-05'::date) ORDER BY "pl_model_metrics"."date" DESC
34.97

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_detail(750)
  if metrics:

SELECT "pl_model_test"."pick_date" AS "date",
       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") 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",
       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"
 WHERE ("pl_model_test"."model_id" = 67 AND "pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2024-10-07'::date AND "pl_model_test"."pick_date" <= '2025-04-05'::date)
 GROUP BY 1
 ORDER BY "pl_model_test"."pick_date" DESC
SELECT ••• FROM "pl_model_test" WHERE ("pl_model_test"."model_id" = 67 AND "pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2024-10-07'::date AND "pl_model_test"."pick_date" <= '2025-04-05'::date) GROUP BY 1 ORDER BY "pl_model_test"."pick_date" DESC
655.88

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_detail(782)
  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"."model_id" = 67 AND "pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2024-10-07'::date AND "pl_model_test"."pick_date" <= '2025-04-05'::date)
 GROUP BY 1,
          2
 ORDER BY 1 ASC,
          2 ASC
SELECT ••• FROM "pl_model_test" WHERE ("pl_model_test"."model_id" = 67 AND "pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2024-10-07'::date AND "pl_model_test"."pick_date" <= '2025-04-05'::date) GROUP BY 1, 2 ORDER BY 1 ASC, 2 ASC
191.19

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_detail(981)
  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"."model_id" = 67 AND "pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2024-10-07'::date AND "pl_model_test"."pick_date" <= '2025-04-05'::date)
 GROUP BY 1
 ORDER BY 1 ASC
SELECT ••• FROM "pl_model_test" WHERE ("pl_model_test"."model_id" = 67 AND "pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2024-10-07'::date AND "pl_model_test"."pick_date" <= '2025-04-05'::date) GROUP BY 1 ORDER BY 1 ASC
186.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_detail(1004)
  "curve_data": list(curve_data),

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 (52 rendered)

Template path

  1. templates

Templates

model_detail.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/model_detail.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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'}
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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'}
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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.5, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.45, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.49, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.43, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.47, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.46, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.45, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.45, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.46, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.53, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.42, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.45, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.43, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.43, '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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.45, 'financial': 0, 'other': 0.12}}
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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <Variable Node: model.name>, <TextNode: ' v'>, <Variable Node: model.version>, <TextNode: '\n\n </h1>\n\n '>, <URLNode view_name=''admin:core_model_change'' args=[<FilterExpression 'model.id'>] kwargs={} as=None>, <TextNode: '"\n '>, <Variable Node: model.key>, <TextNode: '</b>\n '>, <Variable Node: model.version>, <TextNode: '\n '>, <Variable Node: model.type>, <TextNode: '\n '>, <Variable Node: model.description|default:"<i>None</i>">, <TextNode: '\n '>, <Variable Node: model.end_point_url>, <TextNode: '</dd>\n '>, <Variable Node: model.last_trained_dt|localtime>, <TextNode: '</dd>\n '>, <URLNode view_name='"model_picks"' args=[] kwargs={} as=None>, <TextNode: '?model_id='>, <Variable Node: model.id>, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '&date_to='>, <Variable Node: model.last_run_dt|localtime|date:"Y-m-d">, <TextNode: '">\n '>, <Variable Node: model.last_run_dt|localtime>, <TextNode: '\n '>, <ForNode: for key, value in model.meta.items, tail_len: 5>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8de8d27210>, <TextNode: '\n\n '>, <Variable Node: date_from|date:'Y-m-d'>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to|date:'Y-m-d'>, <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 <!--'>, <IfNode>, <TextNode: '\n\n </div>\n'>]>} {'forloop': {'counter': 45, 'counter0': 44, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 5.831335674756926, 'date': datetime.date(2024, 10, 7), 'fail_count': 318, 'hit_count': 705, 'hit_rate': 89.9234693877551, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}, 'pass_count': 466, 'total_count': 784, 'win_rate': 59.43877551020408}} {'metrics': {'content': 0.44, 'financial': 0, 'other': 0.12}}
components/footer.html
/mnt/disks/pennyloupe_disk/pennyloupe/templates/components/footer.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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: footer. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/footer.html"'>>, <TextNode: '\n '>]>}
components/performance_curve.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/components/performance_curve.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: ' "'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object ' 'at 0x7f8de9011650>>'} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}], 'curve_data_by_week': {'2024-10-07': [{'avg_performance': 1.1482115742191157, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-10-07', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 5.792883982796875, 'bin': 0.7, 'count': 344, 'hit_count': 317, 'hit_rate': 92.15116279069767, 'total_count': 344, 'week': '2024-10-07', 'win_count': 211, 'win_rate': 61.33720930232558}, {'avg_performance': 6.254586275872336, 'bin': 0.8, 'count': 2639, 'hit_count': 2462, 'hit_rate': 93.29291398256916, 'total_count': 2639, 'week': '2024-10-07', 'win_count': 1851, 'win_rate': 70.14020462296324}, {'avg_performance': 12.506248515346059, 'bin': 0.9, 'count': 105, 'hit_count': 99, 'hit_rate': 94.28571428571429, 'total_count': 105, 'week': '2024-10-07', 'win_count': 87, 'win_rate': 82.85714285714286}], '2024-10-14': [{'avg_performance': 1.0061648877438392, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-10-14', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 10.219386350156856, 'bin': 0.7, 'count': 98, 'hit_count': 90, 'hit_rate': 91.83673469387755, 'total_count': 98, 'week': '2024-10-14', 'win_count': 54, 'win_rate': 55.10204081632653}, {'avg_performance': 7.313011524896372, 'bin': 0.8, 'count': 692, 'hit_count': 637, 'hit_rate': 92.05202312138728, 'total_count': 692, 'week': '2024-10-14', 'win_count': 427, 'win_rate': 61.70520231213873}, {'avg_performance': 9.142406517619476, 'bin': 0.9, 'count': 33, 'hit_count': 33, 'hit_rate': 100.0, 'total_count': 33, 'week': '2024-10-14', 'win_count': 25, 'win_rate': 75.75757575757575}], '2024-10-21': [{'avg_performance': 0.4201680672269005, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-10-21', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.524298725406872, 'bin': 0.7, 'count': 101, 'hit_count': 98, 'hit_rate': 97.02970297029702, 'total_count': 101, 'week': '2024-10-21', 'win_count': 67, 'win_rate': 66.33663366336634}, {'avg_performance': 8.978718633557438, 'bin': 0.8, 'count': 642, 'hit_count': 613, 'hit_rate': 95.48286604361371, 'total_count': 642, 'week': '2024-10-21', 'win_count': 504, 'win_rate': 78.50467289719626}, {'avg_performance': 9.938637379349295, 'bin': 0.9, 'count': 26, 'hit_count': 23, 'hit_rate': 88.46153846153847, 'total_count': 26, 'week': '2024-10-21', 'win_count': 17, 'win_rate': 65.38461538461539}], '2024-11-04': [{'avg_performance': 5.252553254858663, 'bin': 0.6, 'count': 15, 'hit_count': 15, 'hit_rate': 100.0, 'total_count': 15, 'week': '2024-11-04', 'win_count': 14, 'win_rate': 93.33333333333333}, {'avg_performance': 8.83930281836805, 'bin': 0.7, 'count': 531, 'hit_count': 503, 'hit_rate': 94.72693032015066, 'total_count': 531, 'week': '2024-11-04', 'win_count': 423, 'win_rate': 79.66101694915254}, {'avg_performance': 9.942142286581445, 'bin': 0.8, 'count': 2374, 'hit_count': 2267, 'hit_rate': 95.49283909014322, 'total_count': 2374, 'week': '2024-11-04', 'win_count': 2006, 'win_rate': 84.49873631002528}, {'avg_performance': 9.83825671754544, 'bin': 0.9, 'count': 28, 'hit_count': 26, 'hit_rate': 92.85714285714286, 'total_count': 28, 'week': '2024-11-04', 'win_count': 23, 'win_rate': 82.14285714285714}], '2024-11-11': [{'avg_performance': 2.1667786773527054, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2024-11-11', 'win_count': 1, 'win_rate': 50.0}, {'avg_performance': 7.657999093161716, 'bin': 0.7, 'count': 118, 'hit_count': 110, 'hit_rate': 93.22033898305085, 'total_count': 118, 'week': '2024-11-11', 'win_count': 68, 'win_rate': 57.6271186440678}, {'avg_performance': 7.640204242778447, 'bin': 0.8, 'count': 699, 'hit_count': 646, 'hit_rate': 92.41773962804005, 'total_count': 699, 'week': '2024-11-11', 'win_count': 462, 'win_rate': 66.09442060085837}, {'avg_performance': 5.60764494883491, 'bin': 0.9, 'count': 17, 'hit_count': 16, 'hit_rate': 94.11764705882354, 'total_count': 17, 'week': '2024-11-11', 'win_count': 10, 'win_rate': 58.8235294117647}], '2024-11-18': [{'avg_performance': 6.015458642270233, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2024-11-18', 'win_count': 2, 'win_rate': 50.0}, {'avg_performance': 10.574376799003781, 'bin': 0.7, 'count': 226, 'hit_count': 218, 'hit_rate': 96.46017699115045, 'total_count': 226, 'week': '2024-11-18', 'win_count': 193, 'win_rate': 85.39823008849558}, {'avg_performance': 13.186599873620358, 'bin': 0.8, 'count': 1383, 'hit_count': 1359, 'hit_rate': 98.2646420824295, 'total_count': 1383, 'week': '2024-11-18', 'win_count': 1250, 'win_rate': 90.38322487346349}, {'avg_performance': 21.233717615163624, 'bin': 0.9, 'count': 49, 'hit_count': 48, 'hit_rate': 97.95918367346938, 'total_count': 49, 'week': '2024-11-18', 'win_count': 42, 'win_rate': 85.71428571428571}], '2024-11-25': [{'avg_performance': 7.222154236628532, 'bin': 0.6, 'count': 5, 'hit_count': 5, 'hit_rate': 100.0, 'total_count': 5, 'week': '2024-11-25', 'win_count': 1, 'win_rate': 20.0}, {'avg_performance': 6.773527012164414, 'bin': 0.7, 'count': 274, 'hit_count': 259, 'hit_rate': 94.52554744525547, 'total_count': 274, 'week': '2024-11-25', 'win_count': 187, 'win_rate': 68.24817518248175}, {'avg_performance': 8.348249253533313, 'bin': 0.8, 'count': 2058, 'hit_count': 1955, 'hit_rate': 94.99514091350827, 'total_count': 2058, 'week': '2024-11-25', 'win_count': 1613, 'win_rate': 78.377065111759}, {'avg_performance': 19.09967253153515, 'bin': 0.9, 'count': 87, 'hit_count': 84, 'hit_rate': 96.55172413793103, 'total_count': 87, 'week': '2024-11-25', 'win_count': 77, 'win_rate': 88.50574712643679}], '2024-12-02': [{'avg_performance': 1.4935481589699087, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2024-12-02', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 7.135812348594773, 'bin': 0.7, 'count': 197, 'hit_count': 183, 'hit_rate': 92.89340101522842, 'total_count': 197, 'week': '2024-12-02', 'win_count': 134, 'win_rate': 68.02030456852792}, {'avg_performance': 9.208307269863228, 'bin': 0.8, 'count': 1474, 'hit_count': 1405, 'hit_rate': 95.31886024423338, 'total_count': 1474, 'week': '2024-12-02', 'win_count': 1159, 'win_rate': 78.62957937584804}, {'avg_performance': 16.475986578870945, 'bin': 0.9, 'count': 69, 'hit_count': 69, 'hit_rate': 100.0, 'total_count': 69, 'week': '2024-12-02', 'win_count': 60, 'win_rate': 86.95652173913044}], '2024-12-09': [{'avg_performance': 0.6451612903225812, 'bin': 0.6, 'count': 2, 'hit_count': 1, 'hit_rate': 50.0, 'total_count': 2, 'week': '2024-12-09', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.2226564992659394, 'bin': 0.7, 'count': 196, 'hit_count': 179, 'hit_rate': 91.3265306122449, 'total_count': 196, 'week': '2024-12-09', 'win_count': 102, 'win_rate': 52.04081632653061}, {'avg_performance': 6.353933112385969, 'bin': 0.8, 'count': 1355, 'hit_count': 1230, 'hit_rate': 90.77490774907749, 'total_count': 1355, 'week': '2024-12-09', 'win_count': 856, 'win_rate': 63.17343173431734}, {'avg_performance': 11.106485439814882, 'bin': 0.9, 'count': 76, 'hit_count': 67, 'hit_rate': 88.15789473684211, 'total_count': 76, 'week': '2024-12-09', 'win_count': 56, 'win_rate': 73.6842105263158}], '2024-12-16': [{'avg_performance': 1.983002832861198, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-16', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.473802820720503, 'bin': 0.7, 'count': 232, 'hit_count': 222, 'hit_rate': 95.6896551724138, 'total_count': 232, 'week': '2024-12-16', 'win_count': 141, 'win_rate': 60.775862068965516}, {'avg_performance': 8.83023272132526, 'bin': 0.8, 'count': 1323, 'hit_count': 1241, 'hit_rate': 93.80196523053665, 'total_count': 1323, 'week': '2024-12-16', 'win_count': 926, 'win_rate': 69.99244142101286}, {'avg_performance': 11.036737636680815, 'bin': 0.9, 'count': 64, 'hit_count': 59, 'hit_rate': 92.1875, 'total_count': 64, 'week': '2024-12-16', 'win_count': 41, 'win_rate': 64.0625}], '2024-12-23': [{'avg_performance': 1.1011011011010954, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2024-12-23', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 7.3314432774187965, 'bin': 0.7, 'count': 103, 'hit_count': 99, 'hit_rate': 96.11650485436893, 'total_count': 103, 'week': '2024-12-23', 'win_count': 76, 'win_rate': 73.7864077669903}, {'avg_performance': 17.720135427044642, 'bin': 0.8, 'count': 655, 'hit_count': 644, 'hit_rate': 98.3206106870229, 'total_count': 655, 'week': '2024-12-23', 'win_count': 558, 'win_rate': 85.19083969465649}, {'avg_performance': 25.811052379853372, 'bin': 0.9, 'count': 27, 'hit_count': 26, 'hit_rate': 96.29629629629629, 'total_count': 27, 'week': '2024-12-23', 'win_count': 24, 'win_rate': 88.88888888888889}], '2025-01-06': [{'avg_performance': 2.620115761286852, 'bin': 0.6, 'count': 6, 'hit_count': 6, 'hit_rate': 100.0, 'total_count': 6, 'week': '2025-01-06', 'win_count': 2, 'win_rate': 33.333333333333336}, {'avg_performance': 4.662295058006055, 'bin': 0.7, 'count': 349, 'hit_count': 317, 'hit_rate': 90.83094555873926, 'total_count': 349, 'week': '2025-01-06', 'win_count': 185, 'win_rate': 53.00859598853868}, {'avg_performance': 6.806075620382086, 'bin': 0.8, 'count': 2381, 'hit_count': 2139, 'hit_rate': 89.83620327593448, 'total_count': 2381, 'week': '2025-01-06', 'win_count': 1429, 'win_rate': 60.01679966400672}, {'avg_performance': 7.326248140896919, 'bin': 0.9, 'count': 193, 'hit_count': 180, 'hit_rate': 93.26424870466322, 'total_count': 193, 'week': '2025-01-06', 'win_count': 135, 'win_rate': 69.94818652849742}], '2025-01-20': [{'avg_performance': 3.4184659173408964, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-01-20', 'win_count': 3, 'win_rate': 100.0}, {'avg_performance': 5.399539998749672, 'bin': 0.7, 'count': 210, 'hit_count': 202, 'hit_rate': 96.19047619047619, 'total_count': 210, 'week': '2025-01-20', 'win_count': 135, 'win_rate': 64.28571428571429}, {'avg_performance': 7.9903436044365925, 'bin': 0.8, 'count': 1250, 'hit_count': 1182, 'hit_rate': 94.56, 'total_count': 1250, 'week': '2025-01-20', 'win_count': 930, 'win_rate': 74.4}, {'avg_performance': 13.71154016661054, 'bin': 0.9, 'count': 51, 'hit_count': 51, 'hit_rate': 100.0, 'total_count': 51, 'week': '2025-01-20', 'win_count': 44, 'win_rate': 86.27450980392157}], '2025-01-27': [{'avg_performance': 1.7604692965410031, 'bin': 0.6, 'count': 2, 'hit_count': 2, 'hit_rate': 100.0, 'total_count': 2, 'week': '2025-01-27', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 6.230883188434877, 'bin': 0.7, 'count': 373, 'hit_count': 353, 'hit_rate': 94.63806970509384, 'total_count': 373, 'week': '2025-01-27', 'win_count': 256, 'win_rate': 68.63270777479893}, {'avg_performance': 7.000144960351874, 'bin': 0.8, 'count': 2379, 'hit_count': 2227, 'hit_rate': 93.61076082387558, 'total_count': 2379, 'week': '2025-01-27', 'win_count': 1800, 'win_rate': 75.66204287515762}, {'avg_performance': 8.94537333716256, 'bin': 0.9, 'count': 137, 'hit_count': 134, 'hit_rate': 97.81021897810218, 'total_count': 137, 'week': '2025-01-27', 'win_count': 117, 'win_rate': 85.4014598540146}], '2025-02-03': [{'avg_performance': 0.5923000987166704, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-02-03', 'win_count': 0, 'win_rate': 0.0}, {'avg_performance': 4.868127895439262, 'bin': 0.7, 'count': 205, 'hit_count': 192, 'hit_rate': 93.65853658536585, 'total_count': 205, 'week': '2025-02-03', 'win_count': 117, 'win_rate': 57.073170731707314}, {'avg_performance': 7.083515954136859, 'bin': 0.8, 'count': 1356, 'hit_count': 1275, 'hit_rate': 94.02654867256638, 'total_count': 1356, 'week': '2025-02-03', 'win_count': 935, 'win_rate': 68.952802359882}, {'avg_performance': 20.608715069479796, 'bin': 0.9, 'count': 74, 'hit_count': 73, 'hit_rate': 98.64864864864865, 'total_count': 74, 'week': '2025-02-03', 'win_count': 59, 'win_rate': 79.72972972972973}], '2025-02-10': [{'avg_performance': 1.2525149635412103, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-10', 'win_count': 1, 'win_rate': 25.0}, {'avg_performance': 6.0663088663848175, 'bin': 0.7, 'count': 235, 'hit_count': 228, 'hit_rate': 97.02127659574468, 'total_count': 235, 'week': '2025-02-10', 'win_count': 159, 'win_rate': 67.65957446808511}, {'avg_performance': 10.183628196569163, 'bin': 0.8, 'count': 1340, 'hit_count': 1296, 'hit_rate': 96.71641791044776, 'total_count': 1340, 'week': '2025-02-10', 'win_count': 1081, 'win_rate': 80.67164179104478}, {'avg_performance': 13.982636849111218, 'bin': 0.9, 'count': 68, 'hit_count': 66, 'hit_rate': 97.05882352941177, 'total_count': 68, 'week': '2025-02-10', 'win_count': 55, 'win_rate': 80.88235294117646}], '2025-02-17': [{'avg_performance': 5.295960182317732, 'bin': 0.6, 'count': 4, 'hit_count': 4, 'hit_rate': 100.0, 'total_count': 4, 'week': '2025-02-17', 'win_count': 4, 'win_rate': 100.0}, {'avg_performance': 3.872818241918448, 'bin': 0.7, 'count': 321, 'hit_count': 303, 'hit_rate': 94.39252336448598, 'total_count': 321, 'week': '2025-02-17', 'win_count': 185, 'win_rate': 57.63239875389408}, {'avg_performance': 6.788453357680132, 'bin': 0.8, 'count': 2193, 'hit_count': 1989, 'hit_rate': 90.69767441860465, 'total_count': 2193, 'week': '2025-02-17', 'win_count': 1380, 'win_rate': 62.92749658002736}, {'avg_performance': 7.670386355365594, 'bin': 0.9, 'count': 100, 'hit_count': 90, 'hit_rate': 90.0, 'total_count': 100, 'week': '2025-02-17', 'win_count': 69, 'win_rate': 69.0}], '2025-02-24': [{'avg_performance': 2.413042804846271, 'bin': 0.6, 'count': 3, 'hit_count': 3, 'hit_rate': 100.0, 'total_count': 3, 'week': '2025-02-24', 'win_count': 1, 'win_rate': 33.333333333333336}, {'avg_performance': 4.306898320949316, 'bin': 0.7, 'count': 92, 'hit_count': 82, 'hit_rate': 89.1304347826087, 'total_count': 92, 'week': '2025-02-24', 'win_count': 57, 'win_rate': 61.95652173913044}, {'avg_performance': 6.111975394837259, 'bin': 0.8, 'count': 584, 'hit_count': 530, 'hit_rate': 90.75342465753425, 'total_count': 584, 'week': '2025-02-24', 'win_count': 400, 'win_rate': 68.4931506849315}, {'avg_performance': 6.10823973049422, 'bin': 0.9, 'count': 15, 'hit_count': 14, 'hit_rate': 93.33333333333333, 'total_count': 15, 'week': '2025-02-24', 'win_count': 11, 'win_rate': 73.33333333333333}], '2025-03-03': [{'avg_performance': 5.321202095395639, 'bin': 0.6, 'count': 3, 'hit_count': 2, 'hit_rate': 66.66666666666667, 'total_count': 3, 'week': '2025-03-03', 'win_count': 2, 'win_rate': 66.66666666666667}, {'avg_performance': 6.884124790423999, 'bin': 0.7, 'count': 291, 'hit_count': 277, 'hit_rate': 95.18900343642612, 'total_count': 291, 'week': '2025-03-03', 'win_count': 210, 'win_rate': 72.16494845360825}, {'avg_performance': 6.4610688606195925, 'bin': 0.8, 'count': 1237, 'hit_count': 1172, 'hit_rate': 94.74535165723525, 'total_count': 1237, 'week': '2025-03-03', 'win_count': 921, 'win_rate': 74.45432497978982}, {'avg_performance': 8.796564382360025, 'bin': 0.9, 'count': 18, 'hit_count': 17, 'hit_rate': 94.44444444444444, 'total_count': 18, 'week': '2025-03-03', 'win_count': 15, 'win_rate': 83.33333333333333}], '2025-03-10': [{'avg_performance': 6.369426751592347, 'bin': 0.6, 'count': 1, 'hit_count': 1, 'hit_rate': 100.0, 'total_count': 1, 'week': '2025-03-10', 'win_count': 1, 'win_rate': 100.0}, {'avg_performance': 7.271568030195145, 'bin': 0.7, 'count': 234, 'hit_count': 215, 'hit_rate': 91.88034188034187, 'total_count': 234, 'week': '2025-03-10', 'win_count': 175, 'win_rate': 74.78632478632478}, {'avg_performance': 7.888874458799689, 'bin': 0.8, 'count': 1083, 'hit_count': 1010, 'hit_rate': 93.25946445060019, 'total_count': 1083, 'week': '2025-03-10', 'win_count': 841, 'win_rate': 77.65466297322253}, {'avg_performance': 8.490335848450918, 'bin': 0.9, 'count': 26, 'hit_count': 25, 'hit_rate': 96.15384615384616, 'total_count': 26, 'week': '2025-03-10', 'win_count': 19, 'win_rate': 73.07692307692308}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'kpis': {'avg_gain': 8.10087257998508, 'fail_count': 9676, 'hit_count': 32994, 'hit_rate': 93.839590443686, 'pass_count': 25484, 'total_tests': 35160, 'win_rate': 72.48009101251422}, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'performance_data': '<<queryset of core.ModelTest>>'} {'block': <Block Node: body_end. Contents: [<TextNode: '\n\n <!-- PERFORMANCE CU'>, <IncludeNode: template=<FilterExpression '"components/performance_curve.html"'>>, <TextNode: '\n <!-- /PERFORMANCE CU'>]>} {'curve_data': [{'avg_performance': 3.5644416369303307, 'bin': 0.6, 'count': 70, 'hit_count': 68, 'hit_rate': 97.14285714285714, 'total_count': 70, 'win_count': 34, 'win_rate': 48.57142857142857}, {'avg_performance': 6.541370217827489, 'bin': 0.7, 'count': 4730, 'hit_count': 4447, 'hit_rate': 94.0169133192389, 'total_count': 4730, 'win_count': 3135, 'win_rate': 66.27906976744185}, {'avg_performance': 8.188257670554805, 'bin': 0.8, 'count': 29097, 'hit_count': 27279, 'hit_rate': 93.75193318898856, 'total_count': 29097, 'win_count': 21329, 'win_rate': 73.30308966560126}, {'avg_performance': 12.179536363605928, 'bin': 0.9, 'count': 1263, 'hit_count': 1200, 'hit_rate': 95.01187648456057, 'total_count': 1263, 'win_count': 986, 'win_rate': 78.06809184481394}]}

Context processors

django.template.context_processors.csrf
Toggle context {'csrf_token': <SimpleLazyObject: 'lZMNHS9eO0HPPCjEtXhKyddJpQgToBoiCEVuhBAAabU1wJMKibWjD8ghgnE7vKVM'>}
django.template.context_processors.debug
Toggle context {}
django.template.context_processors.request
Toggle context {'request': <WSGIRequest: GET '/model/67'>}
django.contrib.auth.context_processors.auth
Toggle context {'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>, 'perms': PermWrapper(<SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f8de9011650>>)}
django.contrib.messages.context_processors.messages
Toggle context {'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/67'>>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}}

Cache calls from 1 backend

Summary

Total calls Total time Cache hits Cache misses
2 5.2982717752456665 ms 0 1

Commands

add get set get_or_set touch delete clear get_many set_many delete_many has_key incr decr incr_version decr_version
0 1 1 0 0 0 0 0 0 0 0 0 0 0 0

Calls

Time (ms) Type Arguments Keyword arguments Backend
0.3730 get ('model_detail_995b0e4384b4',) {} <django.core.cache.backends.filebased.FileBasedCache object at 0x7f8de89f2cd0>
/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_detail(663)
  context = cache.get(cache_key)

4.9253 set ('model_detail_995b0e4384b4', {'model': <Model: Rolling CatBoost 3d PH Platt 2% (rolling-ph-cb-p2-seq3-platt v1)>, 'last_metrics': <ModelMetrics: Rolling CatBoost 3d PH Platt 2% Metrics: 2025-04-04 >, 'kpis': {'total_tests': 35160, 'pass_count': 25484, 'fail_count': 9676, 'hit_count': 32994, 'win_rate': 72.48009101251422, 'hit_rate': 93.839590443686, 'avg_gain': 8.10087257998508}, 'curve_data': [{'bin': 0.6, 'total_count': 70, 'hit_count': 68, 'win_count': 34, 'avg_performance': 3.5644416369303307, 'hit_rate': 97.14285714285714, 'win_rate': 48.57142857142857, 'count': 70}, {'bin': 0.7, 'total_count': 4730, 'hit_count': 4447, 'win_count': 3135, 'avg_performance': 6.541370217827489, 'hit_rate': 94.0169133192389, 'win_rate': 66.27906976744185, 'count': 4730}, {'bin': 0.8, 'total_count': 29097, 'hit_count': 27279, 'win_count': 21329, 'avg_performance': 8.188257670554805, 'hit_rate': 93.75193318898856, 'win_rate': 73.30308966560126, 'count': 29097}, {'bin': 0.9, 'total_count': 1263, 'hit_count': 1200, 'win_count': 986, 'avg_performance': 12.179536363605928, 'hit_rate': 95.01187648456057, 'win_rate': 78.06809184481394, 'count': 1263}], 'curve_data_by_week': {'2024-10-07': [{'week': '2024-10-07', 'bin': 0.6, 'total_count': 4, 'hit_count': 4, 'win_count': 0, 'avg_performance': 1.1482115742191157, 'hit_rate': 100.0, 'win_rate': 0.0, 'count': 4}, {'week': '2024-10-07', 'bin': 0.7, 'total_count': 344, 'hit_count': 317, 'win_count': 211, 'avg_performance': 5.792883982796875, 'hit_rate': 92.15116279069767, 'win_rate': 61.33720930232558, 'count': 344}, {'week': '2024-10-07', 'bin': 0.8, 'total_count': 2639, 'hit_count': 2462, 'win_count': 1851, 'avg_performance': 6.254586275872336, 'hit_rate': 93.29291398256916, 'win_rate': 70.14020462296324, 'count': 2639}, {'week': '2024-10-07', 'bin': 0.9, 'total_count': 105, 'hit_count': 99, 'win_count': 87, 'avg_performance': 12.506248515346059, 'hit_rate': 94.28571428571429, 'win_rate': 82.85714285714286, 'count': 105}], '2024-10-14': [{'week': '2024-10-14', 'bin': 0.6, 'total_count': 2, 'hit_count': 2, 'win_count': 0, 'avg_performance': 1.0061648877438392, 'hit_rate': 100.0, 'win_rate': 0.0, 'count': 2}, {'week': '2024-10-14', 'bin': 0.7, 'total_count': 98, 'hit_count': 90, 'win_count': 54, 'avg_performance': 10.219386350156856, 'hit_rate': 91.83673469387755, 'win_rate': 55.10204081632653, 'count': 98}, {'week': '2024-10-14', 'bin': 0.8, 'total_count': 692, 'hit_count': 637, 'win_count': 427, 'avg_performance': 7.313011524896372, 'hit_rate': 92.05202312138728, 'win_rate': 61.70520231213873, 'count': 692}, {'week': '2024-10-14', 'bin': 0.9, 'total_count': 33, 'hit_count': 33, 'win_count': 25, 'avg_performance': 9.142406517619476, 'hit_rate': 100.0, 'win_rate': 75.75757575757575, 'count': 33}], '2024-10-21': [{'week': '2024-10-21', 'bin': 0.6, 'total_count': 1, 'hit_count': 1, 'win_count': 0, 'avg_performance': 0.4201680672269005, 'hit_rate': 100.0, 'win_rate': 0.0, 'count': 1}, {'week': '2024-10-21', 'bin': 0.7, 'total_count': 101, 'hit_count': 98, 'win_count': 67, 'avg_performance': 7.524298725406872, 'hit_rate': 97.02970297029702, 'win_rate': 66.33663366336634, 'count': 101}, {'week': '2024-10-21', 'bin': 0.8, 'total_count': 642, 'hit_count': 613, 'win_count': 504, 'avg_performance': 8.978718633557438, 'hit_rate': 95.48286604361371, 'win_rate': 78.50467289719626, 'count': 642}, {'week': '2024-10-21', 'bin': 0.9, 'total_count': 26, 'hit_count': 23, 'win_count': 17, 'avg_performance': 9.938637379349295, 'hit_rate': 88.46153846153847, 'win_rate': 65.38461538461539, 'count': 26}], '2024-11-04': [{'week': '2024-11-04', 'bin': 0.6, 'total_count': 15, 'hit_count': 15, 'win_count': 14, 'avg_performance': 5.252553254858663, 'hit_rate': 100.0, 'win_rate': 93.33333333333333, 'count': 15}, {'week': '2024-11-04', 'bin': 0.7, 'total_count': 531, 'hit_count': 503, 'win_count': 423, 'avg_performance': 8.83930281836805, 'hit_rate': 94.72693032015066, 'win_rate': 79.66101694915254, 'count': 531}, {'week': '2024-11-04', 'bin': 0.8, 'total_count': 2374, 'hit_count': 2267, 'win_count': 2006, 'avg_performance': 9.942142286581445, 'hit_rate': 95.49283909014322, 'win_rate': 84.49873631002528, 'count': 2374}, {'week': '2024-11-04', 'bin': 0.9, 'total_count': 28, 'hit_count': 26, 'win_count': 23, 'avg_performance': 9.83825671754544, 'hit_rate': 92.85714285714286, 'win_rate': 82.14285714285714, 'count': 28}], '2024-11-11': [{'week': '2024-11-11', 'bin': 0.6, 'total_count': 2, 'hit_count': 2, 'win_count': 1, 'avg_performance': 2.1667786773527054, 'hit_rate': 100.0, 'win_rate': 50.0, 'count': 2}, {'week': '2024-11-11', 'bin': 0.7, 'total_count': 118, 'hit_count': 110, 'win_count': 68, 'avg_performance': 7.657999093161716, 'hit_rate': 93.22033898305085, 'win_rate': 57.6271186440678, 'count': 118}, {'week': '2024-11-11', 'bin': 0.8, 'total_count': 699, 'hit_count': 646, 'win_count': 462, 'avg_performance': 7.640204242778447, 'hit_rate': 92.41773962804005, 'win_rate': 66.09442060085837, 'count': 699}, {'week': '2024-11-11', 'bin': 0.9, 'total_count': 17, 'hit_count': 16, 'win_count': 10, 'avg_performance': 5.60764494883491, 'hit_rate': 94.11764705882354, 'win_rate': 58.8235294117647, 'count': 17}], '2024-11-18': [{'week': '2024-11-18', 'bin': 0.6, 'total_count': 4, 'hit_count': 4, 'win_count': 2, 'avg_performance': 6.015458642270233, 'hit_rate': 100.0, 'win_rate': 50.0, 'count': 4}, {'week': '2024-11-18', 'bin': 0.7, 'total_count': 226, 'hit_count': 218, 'win_count': 193, 'avg_performance': 10.574376799003781, 'hit_rate': 96.46017699115045, 'win_rate': 85.39823008849558, 'count': 226}, {'week': '2024-11-18', 'bin': 0.8, 'total_count': 1383, 'hit_count': 1359, 'win_count': 1250, 'avg_performance': 13.186599873620358, 'hit_rate': 98.2646420824295, 'win_rate': 90.38322487346349, 'count': 1383}, {'week': '2024-11-18', 'bin': 0.9, 'total_count': 49, 'hit_count': 48, 'win_count': 42, 'avg_performance': 21.233717615163624, 'hit_rate': 97.95918367346938, 'win_rate': 85.71428571428571, 'count': 49}], '2024-11-25': [{'week': '2024-11-25', 'bin': 0.6, 'total_count': 5, 'hit_count': 5, 'win_count': 1, 'avg_performance': 7.222154236628532, 'hit_rate': 100.0, 'win_rate': 20.0, 'count': 5}, {'week': '2024-11-25', 'bin': 0.7, 'total_count': 274, 'hit_count': 259, 'win_count': 187, 'avg_performance': 6.773527012164414, 'hit_rate': 94.52554744525547, 'win_rate': 68.24817518248175, 'count': 274}, {'week': '2024-11-25', 'bin': 0.8, 'total_count': 2058, 'hit_count': 1955, 'win_count': 1613, 'avg_performance': 8.348249253533313, 'hit_rate': 94.99514091350827, 'win_rate': 78.377065111759, 'count': 2058}, {'week': '2024-11-25', 'bin': 0.9, 'total_count': 87, 'hit_count': 84, 'win_count': 77, 'avg_performance': 19.09967253153515, 'hit_rate': 96.55172413793103, 'win_rate': 88.50574712643679, 'count': 87}], '2024-12-02': [{'week': '2024-12-02', 'bin': 0.6, 'total_count': 6, 'hit_count': 6, 'win_count': 2, 'avg_performance': 1.4935481589699087, 'hit_rate': 100.0, 'win_rate': 33.333333333333336, 'count': 6}, {'week': '2024-12-02', 'bin': 0.7, 'total_count': 197, 'hit_count': 183, 'win_count': 134, 'avg_performance': 7.135812348594773, 'hit_rate': 92.89340101522842, 'win_rate': 68.02030456852792, 'count': 197}, {'week': '2024-12-02', 'bin': 0.8, 'total_count': 1474, 'hit_count': 1405, 'win_count': 1159, 'avg_performance': 9.208307269863228, 'hit_rate': 95.31886024423338, 'win_rate': 78.62957937584804, 'count': 1474}, {'week': '2024-12-02', 'bin': 0.9, 'total_count': 69, 'hit_count': 69, 'win_count': 60, 'avg_performance': 16.475986578870945, 'hit_rate': 100.0, 'win_rate': 86.95652173913044, 'count': 69}], '2024-12-09': [{'week': '2024-12-09', 'bin': 0.6, 'total_count': 2, 'hit_count': 1, 'win_count': 0, 'avg_performance': 0.6451612903225812, 'hit_rate': 50.0, 'win_rate': 0.0, 'count': 2}, {'week': '2024-12-09', 'bin': 0.7, 'total_count': 196, 'hit_count': 179, 'win_count': 102, 'avg_performance': 4.2226564992659394, 'hit_rate': 91.3265306122449, 'win_rate': 52.04081632653061, 'count': 196}, {'week': '2024-12-09', 'bin': 0.8, 'total_count': 1355, 'hit_count': 1230, 'win_count': 856, 'avg_performance': 6.353933112385969, 'hit_rate': 90.77490774907749, 'win_rate': 63.17343173431734, 'count': 1355}, {'week': '2024-12-09', 'bin': 0.9, 'total_count': 76, 'hit_count': 67, 'win_count': 56, 'avg_performance': 11.106485439814882, 'hit_rate': 88.15789473684211, 'win_rate': 73.6842105263158, 'count': 76}], '2024-12-16': [{'week': '2024-12-16', 'bin': 0.6, 'total_count': 1, 'hit_count': 1, 'win_count': 0, 'avg_performance': 1.983002832861198, 'hit_rate': 100.0, 'win_rate': 0.0, 'count': 1}, {'week': '2024-12-16', 'bin': 0.7, 'total_count': 232, 'hit_count': 222, 'win_count': 141, 'avg_performance': 6.473802820720503, 'hit_rate': 95.6896551724138, 'win_rate': 60.775862068965516, 'count': 232}, {'week': '2024-12-16', 'bin': 0.8, 'total_count': 1323, 'hit_count': 1241, 'win_count': 926, 'avg_performance': 8.83023272132526, 'hit_rate': 93.80196523053665, 'win_rate': 69.99244142101286, 'count': 1323}, {'week': '2024-12-16', 'bin': 0.9, 'total_count': 64, 'hit_count': 59, 'win_count': 41, 'avg_performance': 11.036737636680815, 'hit_rate': 92.1875, 'win_rate': 64.0625, 'count': 64}], '2024-12-23': [{'week': '2024-12-23', 'bin': 0.6, 'total_count': 1, 'hit_count': 1, 'win_count': 0, 'avg_performance': 1.1011011011010954, 'hit_rate': 100.0, 'win_rate': 0.0, 'count': 1}, {'week': '2024-12-23', 'bin': 0.7, 'total_count': 103, 'hit_count': 99, 'win_count': 76, 'avg_performance': 7.3314432774187965, 'hit_rate': 96.11650485436893, 'win_rate': 73.7864077669903, 'count': 103}, {'week': '2024-12-23', 'bin': 0.8, 'total_count': 655, 'hit_count': 644, 'win_count': 558, 'avg_performance': 17.720135427044642, 'hit_rate': 98.3206106870229, 'win_rate': 85.19083969465649, 'count': 655}, {'week': '2024-12-23', 'bin': 0.9, 'total_count': 27, 'hit_count': 26, 'win_count': 24, 'avg_performance': 25.811052379853372, 'hit_rate': 96.29629629629629, 'win_rate': 88.88888888888889, 'count': 27}], '2025-01-06': [{'week': '2025-01-06', 'bin': 0.6, 'total_count': 6, 'hit_count': 6, 'win_count': 2, 'avg_performance': 2.620115761286852, 'hit_rate': 100.0, 'win_rate': 33.333333333333336, 'count': 6}, {'week': '2025-01-06', 'bin': 0.7, 'total_count': 349, 'hit_count': 317, 'win_count': 185, 'avg_performance': 4.662295058006055, 'hit_rate': 90.83094555873926, 'win_rate': 53.00859598853868, 'count': 349}, {'week': '2025-01-06', 'bin': 0.8, 'total_count': 2381, 'hit_count': 2139, 'win_count': 1429, 'avg_performance': 6.806075620382086, 'hit_rate': 89.83620327593448, 'win_rate': 60.01679966400672, 'count': 2381}, {'week': '2025-01-06', 'bin': 0.9, 'total_count': 193, 'hit_count': 180, 'win_count': 135, 'avg_performance': 7.326248140896919, 'hit_rate': 93.26424870466322, 'win_rate': 69.94818652849742, 'count': 193}], '2025-01-20': [{'week': '2025-01-20', 'bin': 0.6, 'total_count': 3, 'hit_count': 3, 'win_count': 3, 'avg_performance': 3.4184659173408964, 'hit_rate': 100.0, 'win_rate': 100.0, 'count': 3}, {'week': '2025-01-20', 'bin': 0.7, 'total_count': 210, 'hit_count': 202, 'win_count': 135, 'avg_performance': 5.399539998749672, 'hit_rate': 96.19047619047619, 'win_rate': 64.28571428571429, 'count': 210}, {'week': '2025-01-20', 'bin': 0.8, 'total_count': 1250, 'hit_count': 1182, 'win_count': 930, 'avg_performance': 7.9903436044365925, 'hit_rate': 94.56, 'win_rate': 74.4, 'count': 1250}, {'week': '2025-01-20', 'bin': 0.9, 'total_count': 51, 'hit_count': 51, 'win_count': 44, 'avg_performance': 13.71154016661054, 'hit_rate': 100.0, 'win_rate': 86.27450980392157, 'count': 51}], '2025-01-27': [{'week': '2025-01-27', 'bin': 0.6, 'total_count': 2, 'hit_count': 2, 'win_count': 0, 'avg_performance': 1.7604692965410031, 'hit_rate': 100.0, 'win_rate': 0.0, 'count': 2}, {'week': '2025-01-27', 'bin': 0.7, 'total_count': 373, 'hit_count': 353, 'win_count': 256, 'avg_performance': 6.230883188434877, 'hit_rate': 94.63806970509384, 'win_rate': 68.63270777479893, 'count': 373}, {'week': '2025-01-27', 'bin': 0.8, 'total_count': 2379, 'hit_count': 2227, 'win_count': 1800, 'avg_performance': 7.000144960351874, 'hit_rate': 93.61076082387558, 'win_rate': 75.66204287515762, 'count': 2379}, {'week': '2025-01-27', 'bin': 0.9, 'total_count': 137, 'hit_count': 134, 'win_count': 117, 'avg_performance': 8.94537333716256, 'hit_rate': 97.81021897810218, 'win_rate': 85.4014598540146, 'count': 137}], '2025-02-03': [{'week': '2025-02-03', 'bin': 0.6, 'total_count': 1, 'hit_count': 1, 'win_count': 0, 'avg_performance': 0.5923000987166704, 'hit_rate': 100.0, 'win_rate': 0.0, 'count': 1}, {'week': '2025-02-03', 'bin': 0.7, 'total_count': 205, 'hit_count': 192, 'win_count': 117, 'avg_performance': 4.868127895439262, 'hit_rate': 93.65853658536585, 'win_rate': 57.073170731707314, 'count': 205}, {'week': '2025-02-03', 'bin': 0.8, 'total_count': 1356, 'hit_count': 1275, 'win_count': 935, 'avg_performance': 7.083515954136859, 'hit_rate': 94.02654867256638, 'win_rate': 68.952802359882, 'count': 1356}, {'week': '2025-02-03', 'bin': 0.9, 'total_count': 74, 'hit_count': 73, 'win_count': 59, 'avg_performance': 20.608715069479796, 'hit_rate': 98.64864864864865, 'win_rate': 79.72972972972973, 'count': 74}], '2025-02-10': [{'week': '2025-02-10', 'bin': 0.6, 'total_count': 4, 'hit_count': 4, 'win_count': 1, 'avg_performance': 1.2525149635412103, 'hit_rate': 100.0, 'win_rate': 25.0, 'count': 4}, {'week': '2025-02-10', 'bin': 0.7, 'total_count': 235, 'hit_count': 228, 'win_count': 159, 'avg_performance': 6.0663088663848175, 'hit_rate': 97.02127659574468, 'win_rate': 67.65957446808511, 'count': 235}, {'week': '2025-02-10', 'bin': 0.8, 'total_count': 1340, 'hit_count': 1296, 'win_count': 1081, 'avg_performance': 10.183628196569163, 'hit_rate': 96.71641791044776, 'win_rate': 80.67164179104478, 'count': 1340}, {'week': '2025-02-10', 'bin': 0.9, 'total_count': 68, 'hit_count': 66, 'win_count': 55, 'avg_performance': 13.982636849111218, 'hit_rate': 97.05882352941177, 'win_rate': 80.88235294117646, 'count': 68}], '2025-02-17': [{'week': '2025-02-17', 'bin': 0.6, 'total_count': 4, 'hit_count': 4, 'win_count': 4, 'avg_performance': 5.295960182317732, 'hit_rate': 100.0, 'win_rate': 100.0, 'count': 4}, {'week': '2025-02-17', 'bin': 0.7, 'total_count': 321, 'hit_count': 303, 'win_count': 185, 'avg_performance': 3.872818241918448, 'hit_rate': 94.39252336448598, 'win_rate': 57.63239875389408, 'count': 321}, {'week': '2025-02-17', 'bin': 0.8, 'total_count': 2193, 'hit_count': 1989, 'win_count': 1380, 'avg_performance': 6.788453357680132, 'hit_rate': 90.69767441860465, 'win_rate': 62.92749658002736, 'count': 2193}, {'week': '2025-02-17', 'bin': 0.9, 'total_count': 100, 'hit_count': 90, 'win_count': 69, 'avg_performance': 7.670386355365594, 'hit_rate': 90.0, 'win_rate': 69.0, 'count': 100}], '2025-02-24': [{'week': '2025-02-24', 'bin': 0.6, 'total_count': 3, 'hit_count': 3, 'win_count': 1, 'avg_performance': 2.413042804846271, 'hit_rate': 100.0, 'win_rate': 33.333333333333336, 'count': 3}, {'week': '2025-02-24', 'bin': 0.7, 'total_count': 92, 'hit_count': 82, 'win_count': 57, 'avg_performance': 4.306898320949316, 'hit_rate': 89.1304347826087, 'win_rate': 61.95652173913044, 'count': 92}, {'week': '2025-02-24', 'bin': 0.8, 'total_count': 584, 'hit_count': 530, 'win_count': 400, 'avg_performance': 6.111975394837259, 'hit_rate': 90.75342465753425, 'win_rate': 68.4931506849315, 'count': 584}, {'week': '2025-02-24', 'bin': 0.9, 'total_count': 15, 'hit_count': 14, 'win_count': 11, 'avg_performance': 6.10823973049422, 'hit_rate': 93.33333333333333, 'win_rate': 73.33333333333333, 'count': 15}], '2025-03-03': [{'week': '2025-03-03', 'bin': 0.6, 'total_count': 3, 'hit_count': 2, 'win_count': 2, 'avg_performance': 5.321202095395639, 'hit_rate': 66.66666666666667, 'win_rate': 66.66666666666667, 'count': 3}, {'week': '2025-03-03', 'bin': 0.7, 'total_count': 291, 'hit_count': 277, 'win_count': 210, 'avg_performance': 6.884124790423999, 'hit_rate': 95.18900343642612, 'win_rate': 72.16494845360825, 'count': 291}, {'week': '2025-03-03', 'bin': 0.8, 'total_count': 1237, 'hit_count': 1172, 'win_count': 921, 'avg_performance': 6.4610688606195925, 'hit_rate': 94.74535165723525, 'win_rate': 74.45432497978982, 'count': 1237}, {'week': '2025-03-03', 'bin': 0.9, 'total_count': 18, 'hit_count': 17, 'win_count': 15, 'avg_performance': 8.796564382360025, 'hit_rate': 94.44444444444444, 'win_rate': 83.33333333333333, 'count': 18}], '2025-03-10': [{'week': '2025-03-10', 'bin': 0.6, 'total_count': 1, 'hit_count': 1, 'win_count': 1, 'avg_performance': 6.369426751592347, 'hit_rate': 100.0, 'win_rate': 100.0, 'count': 1}, {'week': '2025-03-10', 'bin': 0.7, 'total_count': 234, 'hit_count': 215, 'win_count': 175, 'avg_performance': 7.271568030195145, 'hit_rate': 91.88034188034187, 'win_rate': 74.78632478632478, 'count': 234}, {'week': '2025-03-10', 'bin': 0.8, 'total_count': 1083, 'hit_count': 1010, 'win_count': 841, 'avg_performance': 7.888874458799689, 'hit_rate': 93.25946445060019, 'win_rate': 77.65466297322253, 'count': 1083}, {'week': '2025-03-10', 'bin': 0.9, 'total_count': 26, 'hit_count': 25, 'win_count': 19, 'avg_performance': 8.490335848450918, 'hit_rate': 96.15384615384616, 'win_rate': 73.07692307692308, 'count': 26}]}, 'curve_data_week_list': ['2024-10-07', '2024-10-14', '2024-10-21', '2024-11-04', '2024-11-11', '2024-11-18', '2024-11-25', '2024-12-02', '2024-12-09', '2024-12-16', '2024-12-23', '2025-01-06', '2025-01-20', '2025-01-27', '2025-02-03', '2025-02-10', '2025-02-17', '2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': datetime.date(2024, 10, 7), 'date_to': datetime.date(2025, 4, 5), 'performance_data': <QuerySet [{'date': datetime.date(2025, 3, 13), 'pass_count': 485, 'fail_count': 157, 'total_count': 642, 'hit_count': 594, 'win_rate': 75.54517133956386, 'hit_rate': 92.5233644859813, 'avg_performance': 7.247535671092862, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 3, 11), 'pass_count': 551, 'fail_count': 151, 'total_count': 702, 'hit_count': 657, 'win_rate': 78.4900284900285, 'hit_rate': 93.58974358974359, 'avg_performance': 8.289741048312566, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 3, 7), 'pass_count': 576, 'fail_count': 216, 'total_count': 792, 'hit_count': 753, 'win_rate': 72.72727272727273, 'hit_rate': 95.07575757575758, 'avg_performance': 6.36287131419025, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 3, 6), 'pass_count': 572, 'fail_count': 185, 'total_count': 757, 'hit_count': 715, 'win_rate': 75.56142668428005, 'hit_rate': 94.45178335535006, 'avg_performance': 6.7774506987183685, 'metrics': {'content': 0.5, 'financial': 0, 'other': 0.13}}, {'date': datetime.date(2025, 2, 25), 'pass_count': 469, 'fail_count': 225, 'total_count': 694, 'hit_count': 629, 'win_rate': 67.57925072046109, 'hit_rate': 90.63400576368876, 'avg_performance': 5.856615274472982, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 2, 20), 'pass_count': 449, 'fail_count': 424, 'total_count': 873, 'hit_count': 768, 'win_rate': 51.43184421534937, 'hit_rate': 87.97250859106529, 'avg_performance': 5.541803511214512, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 2, 19), 'pass_count': 596, 'fail_count': 291, 'total_count': 887, 'hit_count': 819, 'win_rate': 67.19278466741827, 'hit_rate': 92.3337091319053, 'avg_performance': 6.970891553843846, 'metrics': {'content': 0.45, 'financial': 0, 'other': 0.13}}, {'date': datetime.date(2025, 2, 18), 'pass_count': 593, 'fail_count': 265, 'total_count': 858, 'hit_count': 799, 'win_rate': 69.11421911421911, 'hit_rate': 93.12354312354313, 'avg_performance': 6.873310106951549, 'metrics': {'content': 0.49, 'financial': 0, 'other': 0.13}}, {'date': datetime.date(2025, 2, 14), 'pass_count': 620, 'fail_count': 235, 'total_count': 855, 'hit_count': 818, 'win_rate': 72.51461988304094, 'hit_rate': 95.67251461988305, 'avg_performance': 8.034367499059334, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 2, 12), 'pass_count': 676, 'fail_count': 116, 'total_count': 792, 'hit_count': 776, 'win_rate': 85.35353535353535, 'hit_rate': 97.97979797979798, 'avg_performance': 11.5632443445721, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 2, 7), 'pass_count': 486, 'fail_count': 328, 'total_count': 814, 'hit_count': 754, 'win_rate': 59.70515970515971, 'hit_rate': 92.62899262899263, 'avg_performance': 6.564672548651722, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 2, 5), 'pass_count': 625, 'fail_count': 197, 'total_count': 822, 'hit_count': 787, 'win_rate': 76.03406326034063, 'hit_rate': 95.74209245742092, 'avg_performance': 8.25451047811721, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 1, 30), 'pass_count': 526, 'fail_count': 168, 'total_count': 694, 'hit_count': 657, 'win_rate': 75.79250720461096, 'hit_rate': 94.6685878962536, 'avg_performance': 7.869378722350934, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 1, 29), 'pass_count': 547, 'fail_count': 159, 'total_count': 706, 'hit_count': 660, 'win_rate': 77.47875354107649, 'hit_rate': 93.48441926345609, 'avg_performance': 7.505109867034376, 'metrics': {'content': 0.43, 'financial': 0, 'other': 0.13}}, {'date': datetime.date(2025, 1, 28), 'pass_count': 518, 'fail_count': 206, 'total_count': 724, 'hit_count': 678, 'win_rate': 71.54696132596685, 'hit_rate': 93.646408839779, 'avg_performance': 6.475864275529779, 'metrics': {'content': 0.47, 'financial': 0, 'other': 0.13}}, {'date': datetime.date(2025, 1, 27), 'pass_count': 582, 'fail_count': 185, 'total_count': 767, 'hit_count': 721, 'win_rate': 75.88005215123859, 'hit_rate': 94.0026075619296, 'avg_performance': 6.203414916331537, 'metrics': {'content': 0.44, 'financial': 0, 'other': 0.13}}, {'date': datetime.date(2025, 1, 24), 'pass_count': 539, 'fail_count': 193, 'total_count': 732, 'hit_count': 693, 'win_rate': 73.63387978142076, 'hit_rate': 94.67213114754098, 'avg_performance': 6.690562675279143, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 1, 21), 'pass_count': 573, 'fail_count': 209, 'total_count': 782, 'hit_count': 745, 'win_rate': 73.27365728900256, 'hit_rate': 95.2685421994885, 'avg_performance': 8.866860579575457, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 1, 10), 'pass_count': 396, 'fail_count': 253, 'total_count': 649, 'hit_count': 580, 'win_rate': 61.016949152542374, 'hit_rate': 89.36825885978428, 'avg_performance': 6.217061332785538, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, {'date': datetime.date(2025, 1, 8), 'pass_count': 338, 'fail_count': 374, 'total_count': 712, 'hit_count': 607, 'win_rate': 47.47191011235955, 'hit_rate': 85.25280898876404, 'avg_performance': 5.106687177660153, 'metrics': {'financial': 0, 'content': 0, 'other': 0}}, '...(remaining elements truncated)...']>}, 86400) {} <django.core.cache.backends.filebased.FileBasedCache object at 0x7f8de89f2cd0>
/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_detail(1013)
  cache.set(cache_key, context, 24*60*60)

Signals

Signal Receivers
class_prepared
connection_created register_type_handlers
got_request_exception
m2m_changed
post_delete
post_init
post_migrate create_permissions, create_contenttypes
post_save create_initial_trade_position
pre_delete
pre_init
pre_migrate inject_rename_contenttypes_operations
pre_save
request_finished close_old_connections, close_caches, reset_urlconf
request_started reset_queries, close_old_connections
setting_changed reset_cache, clear_cache_handlers, update_installed_apps, update_connections_time_zone, clear_routers_cache, reset_template_engines, storages_changed, clear_serializers_cache, language_changed, localize_settings_changed, file_storage_changed, complex_setting_changed, root_urlconf_changed, static_storage_changed, static_finders_changed, auth_password_validators_changed, user_model_swapped, update_toolbar_config, reset_hashers, update_level_tags, uninstall_if_needed, clear_caches, StaticFilesStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties