exchange-core

Ultra-fast matching engine written in Java based on LMAX Disruptor, Eclipse Collections, Real Logic Agrona, OpenHFT, LZ4 Java, and Adaptive Radix Trees.

APACHE-2.0 License

Stars
2.1K
Committers
14

Bot releases are hidden (Show)

exchange-core - 0.5.3 Latest Release

Published by mzheravin over 4 years ago

  • bugfix: avoid possible deadlock when using blocking wait strategy;
  • bugfix: incorrect speculative move rejection;
  • logging: dump configuration on startup;
  • tests: improve test commands generation;
  • tests: make cucumber tests cover each major configuration;
  • tests: improve unit tests;
  • tests: detailed hashstate report, faster hash state calculation for hashmaps.
exchange-core - 0.5.2

Published by mzheravin over 4 years ago

  • bugfix: incorrect speculative move rejection;
  • logging: dump configuration on startup;
  • tests: improve test commands generation;
  • tests: make cucumber tests cover both major configuration;
  • tests: improve unit tests;
  • other: optimize pom.xml,
exchange-core - 0.5.1

Published by mzheravin over 4 years ago

  • logging configuration option (enables some debug logging inside Risk and Matching engines);
  • blocking wait strategy (less power usage);
  • improved serialization configuration option;
  • new configuration option - disable margin trades;
exchange-core - 0.5.0

Published by mzheravin over 4 years ago

  • new order type Fill-Or-Kill with budget cap;
  • add reduce (partial cancel) command, cancel event renamed to reduce event;
  • rejection events comes only with SUCCESS result, for non-successful result means implicit rejection.
  • remove fast order book and buckets implementations, remove IOrdersBucket interface;
  • attach trades in ascending order (not reversed as it was previously);
  • allow matching with own orders;
  • improved RiskEngine performance on big volumes;
  • new integration tests for trades and rejections;
  • new configuration options - turn off risk control, commands-group collecting duration;
  • fix SimpleEventsProcessor (incorrect reject processing);
  • test commands generation improvements: detach pre-fill commands list, change test data sizes, longer tail for symbols distribution, improved test data generation correctness (separated pre-fill phase, stick to required number of command, fix order book size calculation);