The function of this repository is to generate order cancel replace requests to market all the time to generate heavy load.
Code is based on fix toolbox
At startup, tool send an OrderMassCancelRequest for all accounts / securities / sides. Cancellation at startup can be disabled with option --no-mass-cancel
After awaiting, it sends one NewOrderSingle, and it updates quantity on ExecutionReport reception.
To test Quote workflow instead of order workflow, you can use option --quote
An other mode is to send NewOrderSingle periodically. No order amendment will be done, only order creation. To activate it, option --order-rate
must be greater than 0.
make build
dist/order-gatling
Options are:
--context : FIX context to send orders/quotes
--symbols : List of symbol to animate
--refprices : List of reference prices for each symbols
--accounts : Accounts sent in PartyIDs
--metrics : Enable metrics
--port : HTTP port for metrics
--no-mass-cancel : Do not send mass order cancel request
--order-rate : Number of new order sent per second
--quote : Use quote instead of order workflow
--update-tempo : Duration before updating order (ms)
dist/order-gatling \
--context fix-session-conf \
--metrics --port 5011 \
--symbols MONA_EUR,CENA_EUR \
--refprices 101.50,100.81 \
--accounts trader1,trader2 \
--update-tempo 50ms \
--no-mass-cancel \
-vv
dist/order-gatling \
--context fix-session-conf \
--symbols MONA_EUR,CENA_EUR \
--refprices 101.50,100.81 \
--accounts trader1,trader2 \
--update-tempo 0ms \
--quote
--no-mass-cancel
dist/order-gatling \
--context fix-session-conf \
--symbols MONA_EUR,CENA_EUR \
--refprices 101.50,100.81 \
--accounts trader1 \
--order-rate 100