SyncHistorySQL
- Утилиты
- Maxim Kuznetsov
- Версия: 1.0
Скрипт для быстрого обновления (синхронизации) торговой истории в базу SQLite. Сохраняет закрытые позиции и ордера, данные об инструментах.
Воспользуйтесь возможностями SQLite для промежуточного хранения данных, аналитики и интеграций платформы MetaTrader. Сохраняйте все данные в едином месте.
Используйте сохранённые данные в аналитических запросах SQL, из Питон и других языков, для построения dash-boards
Параметры
- useDefaults true - использовать параметры по умолчанию. Сохранять данные в иерархию COMMON, в каталог db/{имя_сервера}.{номер_аккаунта}.history.db
вы можете указать useDefaults=false и задать свои параметры сохранения:
- useCommon - использовать общую иерерхию COMMON или каталог данных текущего терминала
- useFolder - каталог для сохранения базы
- useFilename - имя базы данных внутри каталога
Схема базы данных
База содержит необходимый минимум, в стиле mt4 и адаптирована для частых добавлений. После создания базы скриптом, вы можете внести в неё свои коррективы (добавить индексы, вычислимые поля, дополнительные данные и таблицы)
CREATE TABLE IF NOT EXISTS History ( ticket INT PRIMARY KEY, symbol VARCHAR(16), 'type' VARCHAR(16), lots REAL, openPrice REAL, stopLoss REAL, takeProfit REAL, price REAL, 'time' DATETIME, closeTime DATETIME, expiration DATETIME, profit REAL, swap REAL, commission REAL, magic INTEGER, 'comment' VARCHAR(255) ) WITHOUT ROWID;
и
CREATE TABLE IF NOT EXISTS Symbol ( name VARCHAR(16) PRIMARY KEY, base VARCHAR(16), quote VARCHAR(16), digits INTEGER, point REAL, tickSize REAL, minLot REAL, maxLot REAL, lotStep REAL ) WITHOUT ROWID
Использование
Просто запустите скрипт, когда вам нужно получить данные.