# Инструкция площадки: проверка беттинг-теорий и прогнозы

## Что это за сайт
Площадка честного бэктестинга: вы описываете теорию ставок — мы проверяем её на базе
реальных матчей (~12 700 матчей: 14 европейских лиг, сезоны 2021–2025 + отдельные пулы Азия / MLS / Сев. Европа) и отвечаем:
была бы она в плюс или в минус, и почему.
Мы не продаём «секретные схемы» — мы проверяем и говорим правду, в том числе неприятную.

## Два способа проверить теорию
1. **Конструктор** (в центре страницы): собираете теорию фильтрами, как в Экселе — выбираете
   условия, сразу видите размер выборки и получаете честный вердикт. Ничего скачивать не нужно.
2. **Через свою нейросеть** (этот файл — для этого): мгновенно. Шаги ниже.

Плюс **архив** (колонка слева «Уже проверено»): теории, что уже разобраны —
возможно, вашу уже проверили. 🔴 не работает · 🟡 под вопросом · 🟢 живая.

## Бесплатные прогнозы (колонка справа)
- Открыто: матч, ставка, коэффициент, потом результат. Ничего не продаём — набираем аудиторию.
- **Честный трек-рекорд**: публикуем исходы ВСЕХ прогнозов, включая минусовые.
  Если система не видит ценной ставки — лента пустая; мы не рисуем прогнозы ради прогнозов.

## Как пользоваться этим файлом (способ 2)
1. Загрузите этот файл в свою нейросеть (ChatGPT, Claude, DeepSeek — любую).
2. Напишите ей: «Вот инструкция площадки. Переведи мою теорию в скрипт по этой инструкции.
   Моя теория: [опишите теорию своими словами]».
3. Нейросеть соберёт скрипт (JSON). Вставьте его на сайте в поле «Запустить скрипт» —
   ответ придёт мгновенно, без очереди.

## Какие данные у нас ЕСТЬ (на это можно рассчитывать)
Все метрики считаются ТОЛЬКО по матчам ДО игры (никакого подглядывания в будущее).

**Скользящая форма команды** (`"type": "rolling"`). Колонка «типичные» — реальные значения из нашей
базы (среднее за 6 матчей): порог около «средне» отсекает половину, около «высоко/низко» — крайние ~10%.
| метрика | что это | типичные значения |
|---|---|---|
| `attack` | атака (голы за матч, rolling-8 до игры) | низко 0.75 · средне 1.25 · высоко 2.12 |
| `conceded` | пропуск (голы соперников, rolling-8 до игры) | низко 0.75 · средне 1.38 · высоко 2.0 |

Поле `side`: `home` (хозяева) / `away` (гости) / `both_max` (максимум из двух команд) /
`both_min` (минимум) / `diff_abs` (модуль разницы). Операторы: `>=`, `>`, `<=`, `<`, `==`.

**Статистика команды за последние 6 матчей** (`"type": "stat"`, те же `side` и операторы):
| показатель | что это | типичные значения |
|---|---|---|
| `shots` | удары (среднее за последние 6 матчей) | низко 9.33 · средне 12.33 · высоко 16.33 |
| `shots_on_target` | удары в створ (ср. за 6) | низко 2.83 · средне 4.33 · высоко 6.17 |
| `shots_in_box` | удары из штрафной (ср. за 6) | низко 5.83 · средне 8.17 · высоко 11.17 |
| `corners` | угловые (ср. за 6) | низко 3.17 · средне 4.67 · высоко 6.67 |
| `passes` | передачи (ср. за 6) | низко 343.83 · средне 437.33 · высоко 568.83 |
| `tackles` | отборы (ср. за 6) | низко 13.17 · средне 16.33 · высоко 19.83 |
| `fouls` | фолы (ср. за 6) | низко 9.33 · средне 11.83 · высоко 14.67 |
| `interceptions` | перехваты (ср. за 6) | низко 6.17 · средне 8.17 · высоко 10.67 |
| `crosses` | навесы (ср. за 6) | низко 2.83 · средне 4.17 · высоко 6.0 |
| `long_passes` | длинные передачи (ср. за 6) | низко 21.33 · средне 27.17 · высоко 33.83 |
| `saves` | сейвы вратаря (ср. за 6) | низко 1.83 · средне 3.0 · высоко 4.17 |
| `key_passes` | ключевые передачи (ср. за 6; только топ-5) | низко 6.67 · средне 9.17 · высоко 12.5 |
| `dangerous_attacks` | опасные атаки (ср. за 6; только топ-5) | низко 34.0 · средне 44.67 · высоко 60.17 |
| `accurate_passes` | точные передачи (ср. за 6; только топ-5) | низко 262.0 · средне 358.67 · высоко 497.33 |
| `blocked_shots` | заблокированные удары (ср. за 6; только топ-5) | низко 2.17 · средне 3.33 · высоко 4.83 |
| `shots_out_box` | удары из-за штрафной (ср. за 6; только топ-5) | низко 2.83 · средне 4.17 · высоко 6.0 |
| `possession` | владение мячом, % (ср. за 6; только топ-5) | низко 40.83 · средне 49.5 · высоко 60.27 |

⚠️ Пороги берите из колонки «типичные» этой базы, НЕ вслепую с других сайтов — шкалы различаются
(напр. удары у нас ~9–16 за матч, владение в %). Порог за пределами диапазона даст пустую выборку.

**Оценки игроков / сила линий** (`"type": "rating"`, те же `side` и операторы):
| показатель | что это | типичные значения |
|---|---|---|
| `rating_def` | рейтинг линии обороны — форма за 6 матчей (шкала ~6.0–7.5) | низко 6.39 · средне 6.71 · высоко 7.07 |
| `rating_mid` | рейтинг полузащиты — форма за 6 матчей | низко 6.35 · средне 6.65 · высоко 7.02 |
| `rating_att` | рейтинг линии атаки — форма за 6 матчей | низко 6.41 · средне 6.77 · высоко 7.28 |
| `rating_overall` | средний рейтинг команды — форма за 6 матчей | низко 6.44 · средне 6.71 · высоко 7.07 |
| `rating_gk` | рейтинг вратаря — форма за 6 матчей (только топ-5) | — |

Важно: оценка за конкретный матч выставляется ПОСЛЕ матча, поэтому напрямую её использовать нельзя
(это было бы «подглядыванием»). Мы отдаём рейтинг только как форму — среднее за 6 прошлых матчей.
Шкала ~6.0–7.5 (6.5 — средне, 7.0+ — сильно сыграла линия).

**Оценки отдельных игроков и касания** (`"type": "player"`, только топ-5 лиги, те же `side` и операторы):
| показатель | что это | типичные значения |
|---|---|---|
| `star_rating` | рейтинг ЛУЧШЕГО игрока матча — форма за 6 (есть ли кому тащить) | низко 7.09 · средне 7.42 · высоко 7.82 |
| `forwards_rating` | средний рейтинг форвардов — форма за 6 | низко 6.44 · средне 6.73 · высоко 7.15 |
| `defenders_rating` | средний рейтинг защитников — форма за 6 | низко 6.4 · средне 6.68 · высоко 6.95 |
| `player_touches` | суммарные касания команды — форма за 6 | низко 99.33 · средне 159.71 · высоко 252.81 |
| `best_is_forward` | как часто лучший игрок команды — форвард (доля 0..1 за 6 матчей) | низко 0.17 · средне 0.33 · высоко 0.67 |

`best_is_forward` — доля от 0 до 1: как часто лучший игрок команды был форвардом за 6 матчей
(например, `< 0.5` = лидер команды обычно НЕ нападающий). Тоже только по прошлым матчам.

**Тайминг замен** (`"type": "firstsub"`, только топ-5, те же `side` и операторы):
| показатель | что это | типичные значения |
|---|---|---|
| `first_sub` | минута первой замены — в среднем за 6 матчей (как поздно освежают состав; только топ-5) | — |
Пример: команда обычно освежает состав поздно (первая замена в среднем ≥65') — признак осторожности:
```json
{"type":"firstsub","metric":"first_sub","side":"both_min","op":">=","value":65}
```

**Сравнение двух показателей** (`"type": "compare"`, разность A − B по одной команде).
Позволяет проверить теории вида «полузащита слабее обороны», «атака слабее защиты».
Поля: `"metricA"`, `"metricB"` (из списка: `attack`, `conceded`, `rating_def`, `rating_mid`, `rating_att`, `rating_overall`, `rating_gk`), `"side"`, `"op"`, `"value"` (обычно 0).
Пример «центр слабее обороны у обеих команд → тотал больше» (A−B < 0):
```json
{"type":"compare","metricA":"rating_mid","metricB":"rating_def","side":"both_max","op":"<","value":0}
```
Для «наш вратарь хуже чужого» используйте `rating_gk` со стороной `diff_abs` (разница команд).

**Параметры матча** (`"type": "scalar"`):
| метрика | что это |
|---|---|
| `line` | линия тотала букмекера |
| `odds_under` | коэф Under |
| `odds_over` | коэф Over |
| `dc_under` | модельная P(Under) Dixon-Coles |
| `season` | сезон — год начала (2021…2025), напр. season>=2024 = последние сезоны |
| `odds_home` | коэф на победу хозяев (только топ-5) |
| `odds_draw` | коэф на ничью (только топ-5) |
| `odds_away` | коэф на победу гостей (только топ-5) |
| `odds_btts_yes` | коэф «обе забьют — да» (только топ-5) |
| `odds_over05_1h` | коэф «гол в 1-м тайме» (только топ-5) |
| `odds_over15_1h` | коэф «2+ гола в 1-м тайме» (только топ-5) |

**Статика** (`"type": "static"`):
- `"field": "formation"` — стартовая схема: `"match": "back4"` (4 защитника) или `"back3"` (3/5),
  `"side": "both" | "home" | "away"`. Только топ-5 лиги.
- `"field": "league"` — список лиг: `"value": ["English Premier League", ...]`

**Модельные сигналы** (`"type": "model"`):
| метрика | что это |
|---|---|
| `naguchev_gap` | прогноз тотала по методу Нагучева (забитые+пропущенные за 10 игр обеих − ср. лиги) МИНУС линия |

**Рынки** (`"market"`):
| рынок | что это |
|---|---|
| `under` | ставка Under (тотал меньше основной линии) |
| `over` | ставка Over (тотал больше основной линии) |
| `home_win` | победа хозяев (1X2, только топ-5) |
| `draw` | ничья (1X2, только топ-5) |
| `away_win` | победа гостей (1X2, только топ-5) |
| `btts_yes` | обе забьют — да (только топ-5) |
| `over05_1h` | гол в 1-м тайме — да (ТБ 0.5 первый тайм, только топ-5) |
| `under05_1h` | 1-й тайм без голов (ТМ 0.5 первый тайм, только топ-5) |
| `over15_1h` | 2+ гола в 1-м тайме (ТБ 1.5 первый тайм, только топ-5) |
| `under15_1h` | меньше 2 голов в 1-м тайме (ТМ 1.5 первый тайм, только топ-5) |
| `home_win_1h` | хозяева ведут к перерыву (1X2 1-го тайма, только топ-5) |
| `away_win_1h` | гости ведут к перерыву (1X2 1-го тайма, только топ-5) |

**Условие входа** (`"bet_if"`, необязательно): ставить только при нужном коэфе,
например {"metric": "odds_under", "op": ">=", "value": 1.7}.

**Пул матчей** (`"pool"`): `"working"` (топ-5 + 9 европ. лиг, по умолчанию) / `"top5"` (только топ-5) /
`"asia"` (Япония/Китай/Корея/Таиланд/Вьетнам) / `"mls"` (США) / `"nordic"` (Швеция/Финляндия/Исландия/Латвия).
⚠️ Пулы `asia`/`mls`/`nordic`: счёт и коэфы из независимого источника (BetExplorer), линия тотала 2.5.
Рейтинги линий (`rating_*`) есть частично по Японии/Китаю/Корее-2; статов, формаций и поимённых
player-метрик в этих пулах нет — там работают голевые метрики (форма/линия/коэф) и рейтинги (где есть).

## Выбор лиги и сезона
**Конкретная лига** — фильтр `static`/`league` со списком точных названий:
```json
{"type":"static","field":"league","value":["English Premier League","Spanish La Liga"]}
```
Доступные названия (сезоны 2021–2025): `Bundesliga`, `English Premier League`, `French Ligue 1`, `Italian Serie A`, `Spanish La Liga`, `austria`, `czech`, `hungary`, `ireland`, `norway`, `poland`, `portugal`, `romania`, `switzerland`.

**Год/сезон** — фильтр `scalar`/`season` (год начала сезона, есть 2021–2025):
```json
{"type":"scalar","metric":"season","op":">=","value":2024}
```
`season >= 2024` = последние сезоны; `season == 2023` = только сезон-2023; можно комбинировать с лигой.
Совет: сначала проверьте теорию на всех данных (больше выборка → надёжнее), потом сузьте лигой/годом.

## Каких данных НЕТ (теории на них проверить нельзя)
Судьи, погода, травмы, мотивация, стадионы, поминутный тайминг голов, коэффициенты
на таймы/угловые/карточки, составы поимённо. Если теория опирается на это —
мы честно откажем, а не посчитаем «примерно».

## Формат скрипта (JSON)
```json
{
  "name": "Короткое название теории",
  "pool": "working",
  "filters": [
    {"type": "rolling", "metric": "attack", "side": "both_max", "op": "<", "value": 1.2},
    {"type": "scalar", "metric": "line", "op": "<=", "value": 2.25}
  ],
  "market": "under",
  "bet_if": {"metric": "odds_under", "op": ">=", "value": 1.7}
}
```

Ещё пример — «хозяева в атакующей форме, ставим верх»:
```json
{
  "name": "Хозяева разогнались - верх",
  "pool": "top5",
  "filters": [
    {"type": "rolling", "metric": "attack", "side": "home", "op": ">=", "value": 2.2},
    {"type": "static", "field": "formation", "side": "away", "match": "back3"}
  ],
  "market": "over"
}
```

## Как использовать статистику (примеры)
«Обе команды мало бьют и мало владеют мячом → Under» (пороги взяты из колонки «низко»):
```json
{"name":"Тягучие матчи низкой активности","pool":"top5","market":"under","bet_if":{"metric":"odds_under","op":">=","value":1.7},
 "filters":[{"type":"stat","metric":"shots","side":"both_max","op":"<","value":10},
            {"type":"stat","metric":"possession","side":"both_max","op":"<","value":45}]}
```
«Сильная линия обороны у обеих (форма) + низкая линия → Under»:
```json
{"name":"Крепкие обороны","pool":"working","market":"under","bet_if":{"metric":"odds_under","op":">=","value":1.85},
 "filters":[{"type":"rating","metric":"rating_def","side":"both_min","op":">=","value":6.9},
            {"type":"scalar","metric":"line","op":"<=","value":2.5}]}
```
Логика подбора порога: хотите «мало» — берите значение из колонки «низко», «много» — из «высоко»,
«обычные» — «средне». `both_max < X` = у ОБЕИХ ниже X; `both_min >= X` = у ОБЕИХ не ниже X.

## Что вы получите в ответ
- Число ставок (n), доходность ROI, попадаемость, средний коэф.
- Разбивку по сезонам (работала ли теория каждый год или один раз повезло).
- Проверку по полосам коэффициента (не иллюзия ли это одной ценовой зоны).
- Симуляцию 3000 перестановок (насколько результат мог быть удачей).
- Вердикт: 🟢 кандидат / 🟡 под вопросом / 🔴 не работает — и объяснение почему.
- 2 реальных матча из выборки — проверьте нас вручную по открытым источникам.

## Правила для нейросети-переводчика (важно!)
- Используй ТОЛЬКО метрики из таблиц выше. Не выдумывай названия — движок отклонит скрипт.
- Если часть теории нельзя выразить нашими метриками — НЕ подменяй молча: скажи пользователю,
  что именно потерялось, и предложи ближайшую замену.
- Числовые пороги из чужих источников (сайтов статистики, курсов) могут не совпадать с нашей
  шкалой — одна и та же «атака» на разных сайтах считается по-разному. Если сомневаешься
  в пороге, бери умеренное значение и предупреди пользователя.

## Честные правила площадки
- Выборка меньше 30 ставок — вердикт не выносим (любой результат — шум).
- Сырые данные, списки матчей и выгрузки не выдаём — только итоговые цифры и 2 матча-примера.
- Прошлое не гарантирует будущее. Мы показываем, была ли теория в плюс на истории, — не обещаем плюс завтра.
