A micro-to-macro approach to returns, volumes and waiting times