Hi there,

I have used consolidators extensively in my systems but up to this point I have given no particular thought to their inner workings. Had a conversation with a friend, however, which sparked the following questions.

In this example, I have a QuoteBarConsolidator set-up as follows:

var MinutesConsolidator = new QuoteBarConsolidator( TimeSpan.FromMinutes( 5 ) );
  1. How does a consolidator work - does it take, say, the last 5 minute-bars received and puts them together into one 5-minute bar? Or does it take any number of bars received in the last 5 minutes and puts them together into one 5-minute bar (thereby potentially having a 5-minute bar that was missing a number of individual minute-bars)?
     
  2. I suspect the answer to #1 is that it takes any number of bars received in the last 5 minutes. If I'm right, then does the consolidator assume 5 minutes starting from 00:00 going forward? If so, can I change this assumption so that I e.g. have bars covering 00:03 - 00:08 - 00:13, etc.?
     
  3. What is the difference between using RegisterIndicator to register an indicator to a particular consolidator versus binding the indicator's Update function to the consolidator's DataConsolidated event?
 Thanks in advance for any help!