>?I would like to start downloading data on stocks or futures on a tick-by-tick basis. I would like to RECORD and import (export from wherever is required from IB) this data to an MS Excel format. From there I will know how to program the spreadsheet and analyse the data as I see fit (don't want to confuse any readers with too much ultimate detail at this point).?
As I understand that sentence, it is not a workable idea. First, the amount of data you are describing would quickly fill the limits of Excel rows or columns.
Second, writing data to an Excel cell takes time - more time than simply storing it in a variable, even if the spreadsheet is set to not visibly update cells to the user (but FAR MORE TIME if it does try to stay current). You'll be bogging down the program with updates, keeping it from processing the information into decisions.
Finally, I'm not sure - someone else can verify or refute this - but I don't believe the TWS connection can reliably give you tick-by-tick data in near-real-time. (Please correct me if I'm wrong here, folks - I don't look at that level of data).
Therefore, it would be best to send the data to a text file, and keep only the last N data points (or S seconds worth of data, or whatever) handy in memory. When the program loads, it can easily load the tail end of the last data output to a file, and use that to fill the array of most-recent data points.