in simulator/src/main/java/com/google/cloud/simulator/Simulator.java [120:134]
private void addExecution(long price, long quantity) {
if (quantity == 0)
return;
if (quantity > 0) {
midprice = price;
context.add(trailingTimeoutTicks, () -> {
addExecution(price, -1 * quantity);
return Arrays.asList();
});
}
trailingShares += quantity;
trailingSV += quantity * price;
}