Henry, thanks for the response. It was meant to be general information and I wasn't expecting a response. Improved string performance would be nice but is not on top of my list. If I could request features, in priority order they would be as follows:
1. More visibility into the datafeed and broker interfaces. Just the following five keywords would great:
datafeed.connectionStatus
datafeed.queuedQuotes // indicates datafeed quotes backlog
broker.connectionStatus
broker.orderSendTime // time that MC sent order to broker
broker.orderAckTime // time that MC received an order ack or order fill from broker
2. importData() and exportData() functions as discussed
here to enable programmatic manipulation of the database. I use the database to store tick data that has been processed in a proprietary way. It requires a lot of manual exporting of tick data that MC has downloaded, processing it via external software tools, and reimporting manually back into MC database.
3. Make DLL calls faster. I have benchmarked MC DLL call to be 600 CPU clock cycles while TS DLL call is 100 CPU clock cycles. Both were benchmarked using g++ compiler with -O3 optimization. This is the only area where MC is slower than TS. MC is significantly faster in everything else. DLL calls allow one to offload performance critical functionality to native C++ code. However, such offloading is not wise if the call interface cost is high.