Т.З. разработка алгоритмической торговой системы «QuantumFractalMatrix v16.5 NEXUS ULTIMATE»

Tarea técnica


# ТЕХНИЧЕСКОЕ ЗАДАНИЕ (TOR)
## На разработку алгоритмической торговой системы «QuantumFractalMatrix v16.5 NEXUS ULTIMATE»

**Версия документа:** 1.0  
**Платформа:** MetaTrader 5 (MQL5)  
**Статус:** Для реализации (Portfolio Project)  
**Уровень сложности:** High (Enterprise Grade)

---

## 1. ОБЩИЕ СВЕДЕНИЯ О ПРОЕКТЕ

### 1.1. Цель проекта
Разработка высоконагруженного, модульного торгового советника (Expert Advisor) для платформы MetaTrader 5. Проект предназначен для демонстрации компетенций в области алгоритмической торговли, системной архитектуры, управления рисками и написания чистого кода (Clean Code) на MQL5.

### 1.2. Назначение для резюме
Проект позиционируется как **Flagship Case** в портфолио разработчика. Он должен демонстрировать следующие навыки:
*   Архитектурное проектирование (Modular Design, Event-Driven Architecture).
*   Работа с памятью и оптимизация (Caching, LRU).
*   Управление рисками и капиталом (Money Management).
*   Надежность и отказоустойчивость (Self-Healing, Error Handling).
*   Визуализация данных (Custom GUI on Chart).

### 1.3. Основные характеристики
*   **Объем кода:** ~9,000 – 10,000 строк.
*   **Количество модулей:** 22 независимых модуля анализа.
*   **Язык:** MQL5 (Strict mode).
*   **Таймфреймы:** M5 (основной), M15, H1.
*   **Инструменты:** Валютные пары (EURUSD, GBPUSD, USDJPY и др.).

---

## 2. АРХИТЕКТУРА СИСТЕМЫ

Система должна быть построена не как монолитный скрипт, а как **микросервисная архитектура внутри одного EA**.

### 2.1. Ядро системы (Core Kernel)
1.  **CDM (Centralized Dispatcher Module):** Центральный диспетчер. Регистрирует все модули, отслеживает их статус (Active, Error, Healing), управляет очередью вызовов.
2.  **USB (Unified Service Bus):** Унифицированная шина данных. Все модули общаются только через сообщения ( очереди сообщений), прямые вызовы между модулями анализа запрещены.
3.  **UnifiedCache (LRU Cache):** Унифицированный кэш для хранения результатов вычислений (бары, индикаторы). Реализация алгоритма вытеснения Least Recently Used. Цель: HitRate > 90%.

### 2.2. Структура модулей
Код должен быть разделен на логические части (Classes/Structs):
*   **Анализ рынка:** (ACI, SIVC, HOS, FSM, AHTF и др.) — 22 модуля.
*   **Принятие решений:** (IFA Filter, CUFE Engine).
*   **Исполнение:** (Order Execution, Stealth, Splitter).
*   **Сопровождение:** (Intelligent Trailing, Partial Close).
*   **Защита:** (Self-Healing, Overfitting Protection, Connection Monitor).

---

## 3. ФУНКЦИОНАЛЬНЫЕ ТРЕБОВАНИЯ

### 3.1. Модуль Анализа Рынка (Market Analysis)
*   **Реализация собственных индикаторов:** Запрещено использование стандартных `iATR`, `iMA`. Алгоритмы (True Range, Median, Channel) должны быть написаны вручную на массивах цен.
*   **Детектор режимов (Regime Detector):** Автоматическое определение 7 состояний рынка (Сильный тренд, Флэт, Волатильность и т.д.).
*   **Мультитаймфрейм анализ (AHTF):** Получение данных со старшего ТФ с механизмомFallback (возврат на локальный тренд при ошибке данных).

### 3.2. Система Фильтрации Сигналов (IFA)
*   **10 уровней фильтрации:** Сигнал проходит только при совпадении всех условий (тренд, ликвидность, время, волатильность, история убытков и т.д.).
*   **Адаптивный порог:** Порог входа динамически меняется в зависимости от волатильности рынка.
*   **Anti-Repeat SL/TP:** Генерация уникальных уровней стоп-лосс и тейк-профит, чтобы они не повторялись в истории (защита от "охоты за стопами").

### 3.3. Управление Рисками (Money Management)
*   **Предиктивный расчет лота:** Учет 8 факторов риска (режим рынка, время, день недели, спред, winrate, волатильность, связь и т.д.).
*   **Прогрессивная сетка:** Увеличение лота после серии прибылей, уменьшение после убытков.
*   **Портфельный риск:** Контроль совокупной экспозиции при мультивалютной торговле.
*   **Виртуальные ордера (Virtual Orders):** Режим симуляции торговли без реальных денег для обучения системы и проверки гипотез.

### 3.4. Управление Позициями (Trade Management)
*   **Интеллектуальный трейлинг (13 режимов):** Автоматическое переключение стратегий сопровождения (Консервативный, Агрессивный, Безубыток, Частичное закрытие, Экстренное закрытие и др.).
*   **Частичное закрытие (Partial Close):** Фиксация части прибыли с переводом остатка в безубыток.
*   **Защита от новостей:** Ужесточение стопов или закрытие позиций перед волатильными событиями (заглушка для интеграции календаря).

### 3.5. Надежность и Безопасность (Reliability & Safety)
*   **Self-Healing v4.0:** Автоматическое восстановление модулей при сбоях (перезапуск инициализации, сброс буферов).
*   **Защита от переобучения (Overfitting Protection):** Мониторинг отклонения адаптивных весов. Сброс к базовым значениям при превышении порога.
*   **Broker Stealth:** Рандомизация лота, комментариев и времени отправки ордеров для имитации ручной торговли.
*   **5 уровней защиты ордеров:** Retry-механизм при ошибках сети, реквотах, invalid stops.

### 3.6. Интерфейс и Логирование (UI/UX)
*   **Dashboard на графике:** Отображение текущей статистики, режима рынка, состояния систем (здоровье модулей, кэш, виртуальные ордера).
*   **Подробное логирование:** Разделение логов по уровням (Error, Warning, Info, Debug).
*   **Сохранение статистики:** Запись истории сделок и адаптаций в бинарные файлы для восстановления после перезапуска терминала.

---

## 4. НЕФУНКЦИОНАЛЬНЫЕ ТРЕБОВАНИЯ

### 4.1. Производительность
*   **CPU Load:** Потребление процессора не более 5% на одном ядре при работе на M5.
*   **Memory:** Отсутствие утечек памяти. Корректная очистка массивов и объектов в `OnDeinit`.
*   **Speed:** Время обработки одного тика не должно превышать 50 мс.

### 4.2. Качество кода
*   **Стандарты:** Соблюдение стандартов кодирования MQL5 (именование переменных, отступы).
*   **Комментарии:** Каждый модуль и сложная функция должны иметь заголовочный комментарий (назначение, входы, выходы, зависимости).
*   **Структура:** Код должен быть разделен на 9 логических частей (файлов или регионов), которые собираются в один проект.

### 4.3. Тестируемость
*   **Backtest Ready:** Код должен корректно работать в Strategy Tester (режим Every Tick).
*   **Debug Mode:** Наличие флага `EnableDebug`, который включает расширенное логирование без влияния на основную логику.

---

## 5. ЭТАПЫ РАЗРАБОТКИ (ROADMAP)

Для резюме важно показать поэтапную работу. Разбейте проект на спринты:

1.  **Этап 1: Архитектура и Ядро (Недели 1-2)**
    *   Реализация CDM, USB, Cache.
    *   Базовые структуры данных.
    *   *Результат:* Пустой советник с работающей шиной данных и логом инициализации.
2.  **Этап 2: Модули Анализа (Недели 3-5)**
    *   Написание собственных индикаторов (ACI, SIVC).
    *   Детектор рыночных режимов.
    *   *Результат:* График с отрисовкой каналов и режимов рынка.
3.  **Этап 3: Логика Торговли и Риски (Недели 6-8)**
    *   Система фильтрации IFA.
    *   Расчет лота (MM).
    *   Открытие/Закрытие ордеров.
    *   *Результат:* Советник торгует на демо-счете.
4.  **Этап 4: Сопровождение и Защита (Недели 9-10)**
    *   Трейлинг (13 режимов).
    *   Self-Healing, Stealth.
    *   *Результат:* Стабильная работа без сбоев.
5.  **Этап 5: UI и Финализация (Неделя 11)**
    *   Dashboard.
    *   Оптимизация кода.
    *   Написание документации.
    *   *Результат:* Готовый продукт для портфолио.

---

## 6. ТРЕБОВАНИЯ К РЕЗУЛЬТАТУ (DELIVERABLES)

Для размещения в резюме необходимо подготовить:

1.  **Исходный код:** Ссылка на GitHub (приватный или публичный репозиторий).
2.  **Компилированный файл:** `.ex5` для демонстрации работы.
3.  **Документация:** PDF файл с описанием архитектуры (диаграммы классов, потоков данных).
4.  **Отчет о тестировании:** Скриншоты из Strategy Tester (график эквити, отчет за 1-2 года).
5.  **Видео-демо:** Короткая запись экрана (1-2 мин), показывающая работу Dashboard и открытие сделок.

---

## 7. КОМПЕТЕНЦИИ, ДЕМОНСТРИРУЕМЫЕ ПРОЕКТОМ

При добавлении в резюме укажите следующие навыки, подтвержденные этим проектом:

*   **MQL5 Advanced:** Работа с массивами, буферами, указателями, классами.
*   **System Design:** Проектирование модульных систем, шины данных, кэширование.
*   **Algorithmic Trading:** Понимание рыночной микроструктуры, волатильности, риск-менеджмента.
*   **Error Handling:** Построение отказоустойчивых систем (Self-Healing).
*   **Optimization:** Оптимизация вычислений для работы в реальном времени.
*   **UI/UX:** Создание интерфейсов средствами терминала.

Han respondido

1
Desarrollador 1
Evaluación
(89)
Proyectos
254
78%
Arbitraje
9
22% / 56%
Caducado
36
14%
Trabaja
Ha publicado: 3 artículos, 26 ejemplos
2
Desarrollador 2
Evaluación
(39)
Proyectos
52
19%
Arbitraje
15
27% / 67%
Caducado
8
15%
Libre
Ha publicado: 1 ejemplo
3
Desarrollador 3
Evaluación
(202)
Proyectos
263
22%
Arbitraje
23
52% / 17%
Caducado
0
Trabajando
4
Desarrollador 4
Evaluación
(9)
Proyectos
22
9%
Arbitraje
3
0% / 67%
Caducado
3
14%
Trabaja
5
Desarrollador 5
Evaluación
(5)
Proyectos
10
20%
Arbitraje
1
0% / 100%
Caducado
1
10%
Trabaja
6
Desarrollador 6
Evaluación
(42)
Proyectos
43
7%
Arbitraje
0
Caducado
0
Libre
Ha publicado: 2 artículos, 23 ejemplos
7
Desarrollador 7
Evaluación
(298)
Proyectos
478
40%
Arbitraje
105
40% / 24%
Caducado
82
17%
Trabajando
Ha publicado: 2 ejemplos
8
Desarrollador 8
Evaluación
(4)
Proyectos
4
0%
Arbitraje
4
25% / 75%
Caducado
1
25%
Libre
9
Desarrollador 9
Evaluación
(1)
Proyectos
2
0%
Arbitraje
0
Caducado
0
Libre
10
Desarrollador 10
Evaluación
(73)
Proyectos
257
53%
Arbitraje
16
50% / 38%
Caducado
83
32%
Libre
11
Desarrollador 11
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
12
Desarrollador 12
Evaluación
(19)
Proyectos
21
19%
Arbitraje
1
0% / 100%
Caducado
2
10%
Trabaja
Solicitudes similares
Цель доработки Исправить механизм пробойной защиты сетки. Пробойный механизм должен: защищать открытые хвосты при выходе цены из диапазона; рассчитывать объём только по текущему плавающему убытку хвостов; закрывать корзину около нуля или с небольшим плюсом; корректно переживать ложные пробои; повторять попытки защиты до закрытия корзины; не останавливать работу основной сетки; не создавать серию бессистемных

Información sobre el proyecto

Presupuesto
30+ USD
Plazo límite de ejecución
de 30 a 90 día(s)