SyncDB LT
- Утилиты
- Maxim Kuznetsov
- Версия: 1.0
Сервис для постоянной поддержки базы SQLite в актуальном состоянии. Быстрая работа в реальном времени. Сохраняет открытые позиции и ордера, текущие котировки, торговую историю.
Воспользуйтесь возможностями SQLite для промежуточного хранения данных, аналитики и интеграций платформы MetaTrader. Сохраняйте все данные в едином месте.
Используйте сохранённые данные в аналитических запросах SQL, из Питон и других языков, для построения dash-boards и интеграции MetaTrader
Эта версия "Learn & Test" предназначена для ознакомления и обучения, а также отладки ваших программ.
Сервис будет синхронизовать данные только демо-аккаунтов.
Никаких иных ограничений или отличий от SyncDB (https://www.mql5.com/ru/market/product/127024) нет
Параметры
SyncDB создаёт и одновременно ведёт 2 базы :
db/{server_name}.{account}.history-lt.db - пополняемая база истории, содержит историю сделок и информацию об инструментах
db/ram/{server_name}.{account}.trade-lt.db - обновляемая база, содержит открытые ордера и позиции, текущие цены.
где {server_name} - имя торгового сервера DC, будет поставлено автоматически. {account} номер торгового аккаунта на нём. Таким образом при одновременной работе нескольких терминалов, их данные хранятся раздельно и не вызовут взаимных блокировок и замедлений.
настоятельно рекомендую каталог db/ram размещать на ram-диске или быстром носителе.
Очень простые параметры:
- priceUpdateSec, 15 - период (секунд) для обновления цен в базе. При использовании ram-диска можете указывать меньшие значения, вплоть до 0
- useCommon , true. Использовать общий каталог данных.
- dbFolder , "db". Имя каталога для хранения баз
Схема базы trade-lt.db
CREATE TABLE IF NOT EXISTS Trade ( 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 INT , 'comment' VARCHAR(255) ) WITHOUT ROWID
и
CREATE TABLE IF NOT EXISTS Watch ( name VARCHAR(16) PRIMARY KEY, 'time' DATETIME, bid REAL, ask REAL, spread INTEGER, stopLevel INTEGER, tickValue REAL ) WITHOUT ROWID
Схема базы history-lt.db
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
Использование
Просто запустите экземпляр сервиса SyncDB LT, и используйте данные в своих приложениях и для интеграции.
Эта версия "Learn & Test" предназначена для ознакомления и обучения, а также отладки ваших программ.
Сервис будет синхронизовать данные только демо-аккаунтов.
Никаких иных ограничений или отличий от SyncDB (https://www.mql5.com/ru/market/product/127024) нет
