public void start() 
  {    
    // connect
    client.eConnect(HOST, PORT, CLIENT_ID);
    
    if (client.isConnected()) {
      logger.info("Connected");
      
      // ContractData cba = new ContractData(1, "CBA");
      // ContractData nab = new ContractData(2, "NAB");      
      
      // request test market data for CBA 
      // client.reqMktData(cba.mktDataID, cba.contract, "221", false);
      
      // request market depth for CBA & NAB
      // client.reqMktDepth(cba.mktDepthID, cba.contract, 5);
      // client.reqMktDepth(nab.mktDepthID, nab.contract, 5);      
      
      // request market depth for SPI & STW
      ContractData stw = new ContractData(2, "STW", "STK", "ASX", "AUD");
      ContractData spi = new ContractData(3, "SPI", "CFD", "SNFE", "AUD");      

      client.reqMktDepth(stw.mktDepthID, stw.contract, 5);
      client.reqMktDepth(spi.mktDepthID, spi.contract, 5);            
    }
  }