So current I do it like this:
contract <- lapply(sym, function(x) twsEquity(x, 'SMART','ISLAND'))
lapply(contract, function(x) reqHistoricalData(tws, Contract=x, barSize = "1 day", duration = "1 D", verbose = FALSE))
sym is merely a vector of 30 or so stock symbols. This is extremely slow.
Therefore, this could not be the right way to do it. In my live trading session, I must monitor 100s of stocks. Updates to their last traded price must be retrieve in slip seconds, not minutes.