Реализация UniFeeder источника данных для МТ4/МТ5 серверов (MetaQuotes), который берёт котировки из терминала MT5, модифиирует их, если нужно и отправляет подключенным по Socket клиентам. MQL5UniFeeder берет котировки из МТ5 терминала по символам указанным в Source, преобразует их с указанными в разделе Translates правилами и отправляет по socket клиентам с именем Symbol
Формат транслируемых котировок оп socket:
Symbol Bid Ask\r\n
EURUSD 1.1154 1.1156\r\n
EURUSDf 1.11535 1.11653\r\n
EURUSDp 1.11545 1.11643\r\n
Пример файла конфигурации UniFeeder.json
{
"Translates": [
{
"Source": "EURUSD",
"Symbol": "EURUSD",
"Fix": "20",
"Digits": "4"
},
{
"Source": "EURUSD",
"Symbol": "EURUSDf",
"BidMarkup": "-12",
"AskMarkup": "12",
"Digits": "5"
},
{
"Source": "EURUSD",
"Symbol": "EURUSDp",
"Percent": "15",
"Digits": "5"
}
]
}
Translates
- Source: Символ источник в торговом терминале МТ5
- Symbol: Имя символа которое будет транслироваться клиентам
- Digits: Количество знаков после запятой для котировки символа (Число от 1 до 8)
- Percent: % на который нужно повысить/понизить исходный спред (Число в формате от 0.0 - 100.0)
- Min: Минимальный спред в пунктах (число от 0 до ∞)
- Max: Максимальный спред в пунктах (число от 0 до ∞)
- Fix: Фиксированный спред в пунктах (число от 0 до ∞). Если указано то преобразовывает спред в фиксированный исходя из среднего значения между bid/ask
- BidMarkup: Количество пунктов которое нужно прибавить к значению Bid (число от 0 до ∞)
- AskMarkup: Количество пунктов которое нужно прибавить к значению Ask (число от 0 до ∞)