Java-проект: SimpleFIXClient

Предлагаю вашему вниманию мой pet-проект Simple FIX Client для тестирования приложений с FIX-протоколом. Java-приложение использует свободную библиотеку QuickFIX/J, а для управления сообщениями — доменно-ориентированный (DSL) скриптовой язык на Groovy.

С помощью сценариев, написаных на DSL и сохраненных в файлах сценариев, вы можете сообщать библиотеке QuickFIX/J, какие сообщения она должна посылать, и валидировать полученные ответы.

Пример сценария выглядит так:

connection.defaults symbol: 'IBM', secType: 'FUT' 
connection.defaults side: 'Buy'
connection.defaults exDest:'CME'
connection.defaults ordCapacity:'A'
connection.defaults account:'12345'

for(x in 1..2) {
  connection.send nos, qty: x, price: 0, tif: 'GTC', ordType: 'Market'
  sleep 2.seconds
  connection.expect ack
  connection.expect fill
}

Данный скрипт создает один за одним в цикле два market-ордера по покупке фьючерса IBM на бирже CME по цене 0, ждет 2 секунды, по истечение которых он ожидает получить сначала Ack, а потом Fill.

В качестве тестового стенда можете использовать мой второй проект Simple FIX Executor. Simple FIX Client выступит в качестве клиента, а Simple FIX Executor — в качестве сервера — симулятора биржи: в ответ на New Order Single (35=D) посылает Ack, а потом Fill-сообщение об исполнении вашего ордера.

Оставьте комментарий