Формат: Турнир прогнозов BTC внутри Telegram
Тип: НЕ букмекерка, а конкурс прогнозов с призовым фондом
⸻
1. ОБЩАЯ КОНЦЕПЦИЯ
Каждый час фиксируется цена BTC.
Пользователь выбирает:
• 📈 Выше
• 📉 Ниже
Через 60 минут фиксируется новая цена.
Если прогноз верный — начисляются очки.
В конце дня / недели распределяется призовой фонд.
⸻
2. ПЛАТФОРМА
Формат:
Telegram Mini App (WebApp внутри Telegram)
Авторизация:
Через Telegram WebApp Auth
Использовать Telegram ID как уникальный ключ пользователя.
⸻
3. ТЕХНОЛОГИИ
Frontend:
• React / Next.js
• Telegram WebApp SDK
Backend:
• Node.js (Express) или Python (FastAPI)
• PostgreSQL
Интеграции:
• API получения цены BTC (указать биржу, например MEXC или Binance)
• Cron для фиксации цены каждый час
⸻
4. ЛОГИКА РАУНДА
Каждый час:
1. В 00 минут фиксируется стартовая цена
2. Пользователи могут голосовать 55 минут
3. Последние 5 минут голосование закрыто
4. В следующем часу фиксируется финальная цена
5. Определяется результат
Если финальная цена > стартовой → победа “Выше”
Если финальная цена < стартовой → победа “Ниже”
Если равна → раунд отменяется
⸻
5. СИСТЕМА ОЧКОВ
Базовая модель:
• Верный прогноз = +1 балл
• Неверный = 0
• Ничья = возврат балла (если платная модель)
Дополнительно:
Если пользователь в меньшинстве и прав — +2 балла
(реализовать динамическую логику процента толпы)
⸻
6. ЭКОНОМИКА
Модель: Доступ к турниру
Тарифы:
• День — 10$
• Неделя — 40$
• PRO — 99$
Пользователь платит за доступ к участию в раундах.
Призовой фонд:
• 70% распределяется между ТОП-игроками
• 30% — комиссия платформы
Распределение:
1 место — 40%
2 место — 20%
3 место — 10%
Остальные — пропорционально
⸻
7. ЭКРАНЫ
7.1 Главная
• Текущая цена BTC
• Таймер до конца раунда
• Кнопки: ВЫШЕ / НИЖЕ
• Процент проголосовавших
• Статус пользователя (проголосовал / нет)
⸻
7.2 Лидерборд
• ТОП 10
• Позиция текущего пользователя
• Количество очков
⸻
7.3 Профиль
• Ник
• Баланс
• Уровень
• Серия побед
• Статистика за сезон
⸻
7.4 История раундов
• Номер раунда
• Прогноз
• Результат
• Полученные баллы
⸻
8. СЕЗОННАЯ СИСТЕМА
• Сезон 30 дней
• В конце сезона фиксируется рейтинг
• Начисление призов
• Обнуление очков
⸻
9. ДОПОЛНИТЕЛЬНЫЕ МЕХАНИКИ
9.1 Серия побед (Streak)
• Отображать текущую серию
• Бонусные баллы за 3+ подряд
9.2 Против толпы
• Показывать % голосов
• Если игрок выбрал сторону <35% и оказался прав — бонус
9.3 Уровни игроков
• Новичок
• Трейдер
• Контртренд
• Спекулянт
• Легенда
⸻
10. АДМИН-ПАНЕЛЬ
Нужно реализовать:
• Ручной запуск / остановка турнира
• Просмотр всех пользователей
• Просмотр транзакций
• Изменение коэффициентов бонусов
• Корректировка баллов вручную
• Управление призовым фондом
⸻
11. БАЗА ДАННЫХ (МИНИМУМ)
Таблицы:
users
• id
• telegram_id
• username
• balance
• total_points
• level
• streak
rounds
• id
• start_price
• end_price
• start_time
• end_time
• result
predictions
• id
• user_id
• round_id
• choice
• points_awarded
transactions
• id
• user_id
• amount
• type
• timestamp
⸻
12. БЕЗОПАСНОСТЬ
• Проверка Telegram подписи
• Ограничение одного прогноза на раунд
• Защита от повторной отправки
• Серверная фиксация цены (не с клиента)
⸻
13. ВИЗУАЛЬНЫЙ СТИЛЬ
• Тёмный фон
• Оранжевые акценты
• Минимализм
• Крупный таймер
• Анимация последних 10 секунд
⸻
14. MVP СРОКИ
Этап 1 (MVP):
• Авторизация
• Раунд
• Очки
• Лидерборд
• Оплата доступа
⸻