mp_pairs#
Список используемых валютных пар. Он зависит от состава инструментов поставщика ликвидности. Если разрядность заранее не определена, поле digits вычисляется по историческим данным, полученным при первоначальной загрузке, и затем при необходимости может быть скорректировано. Это значение передается в алгоритмы расчета. Поле blocked используется для временной блокировки работы с отдельными парами.
mp_charts#
Свечные графики (чарты). Поле dandt хранит дату и время открытия бара в формате UnixTimestamp, то есть количество секунд, прошедших с полуночи 00:00:00 UTC 1 января 1970 года. Объем (v) сейчас не используется. Ниже и далее адресация к конкретному инструменту идет по связке pair_id + tf: идентификатор пары из mp_pairs и таймфрейм в минутах (5, 15, 30, 60, 240 и выше).
mp_models и группа связанных таблиц#
Хранение моделей организовано в таблицах mp_models, mp_params, mp_levels, mp_add_branch, mp_nn_answers. Логически хранение модели и сопутствующей «внешней» информации подразделяется на:
- Поля, которые предполагается использовать при анализе моделей средствами MySQL (список приведен в статье Внесение моделей в БД), данные поля размещены «развернуто» в соответствующих полях таблицы mp_models
- Поля «второстепенные», которые хранятся отдельно как параметры в таблице
mp_params: один параметр — одна запись, связанная с моделью поmodel_id. - Поля «внешние», то есть информация, которая не является непосредственной частью модели и формируется отдельно:
Levels,clusterParams,modelScores. Эти данные хранятся в сериализованном виде в текстовом поле таблицыmp_add_branchсо ссылкой на модель поmodel_id. Основные поля здесь — параметры кластеров модели (clusterParams) и сводные оценочные параметры (modelScores). - Поля иерархической информации, которые хранятся также в упакованном виде (текстовая строка serialized) и являются непосредственно параметрами модели – хранятся в той же таблице mp_add_braches со ссылкой на модель по model_id (status, IDprevs, p12candidates, IDinners, Presupp).
- Информация по уровням, размерам моделей и целям. Содержит всю информацию по «модель + наименование цели», которая формируется модулем inc_calc_controls. По модели, в зависимости от количество «целей» может быть до трех записей. Ссылка на модель – model_id + aim_name.
- Информация «ответы нейронок» также вынесены в отдельную таблицу mp_nn_answers, в которой в отдельной записи хранится ответ определенной НС – ссылка: model_id + наименование цели + номер НС.
mp_flags#
Вспомогательная таблица флагов может хранить любые признаки и статусы текущего состояния. Сейчас она используется главным образом для защиты от повторного запуска процедуры расчета моделей до завершения предыдущего прогона. Схема простая: при старте проверяется флаг mp_calc_models runs; если он не free, выполнение завершается. Исключение делается только для явно «застарелого» флага, оставшегося после аварийного завершения. При старте программа устанавливает значение busy, а после завершения возвращает его в free. Поле info предназначено для хранения вспомогательной информации.
mp_debug_logs#
Служебная таблица mp_debug_logs – недавняя доработка механизма логирования для отслеживания различных «событий» по модели. Состоит из «обезличенных полей-параметров» p1-p12 + ключевые поля (id+src). Идея – в нужных событийных местах алгоритма вызвать сервисную функцию логирования. Src (источник) может указывать на событие. P1-12 – набор нужных параметров для отслеживания. Поле updated заполняется автоматически и фиксирует время записи.
mp_done#
Таблица mp_done – пока не используется. Задумывалась как хранение результатов отработки сигналов.
mp_active и mp_sets#
Таблицы mp_active и mp_sets остались неизменными – как в версии онлайн старого сайта. Хранение моделей + целей по «активным» «controls» и сформированные «сигналы» для торгового бота согласно установкам «сетов». Основной для торговли является «mp_sets».
mp_last_calc#
Служебная таблица mp_last_calc. В данной таблице отмечается open_time (время бара) последнего бара, обработанного (учтенного) при пересчете моделей. Алгоритм пересчета при старте определяет список инструментов (пара + ТФ), по которым нужно выполнить пересчет (инструменты, по которым появился новый бар(ы)). При завершении расчета происходит обновление поля dandt в mp_last_calc.





