Example #1
0
        private double getSymbolPrice(string secType)
        {
            dbm.WriteLine(clientID, "Obtaining undelying price ...", true);

            // get Underlying Contract
            Contract underlying = new Contract();

            underlying.Symbol  = this_symbol;
            underlying.SecType = secType;
            underlying         = ibClient.reqContractDetails(1, underlying)[0].contractDetails.Summary;

            // Request Price
            do
            {
                ibClient.SetMarketDataType(IntBrokerSocket.MarketDataType.Delayed);
                CompleteTick_Struct mymkt = ibClient.GetMktSnapShotData(new List <Contract>(new Contract[] { underlying }))[0];
                symbolPrice = mymkt.getTick(tickPreference.LastPreference);
            } while (symbolPrice <= 0);

            return(symbolPrice);
        }
Example #2
0
        private List <CompleteTick_Struct> IBPrice2DT()
        {
            //###########################################################################################
            //      Obtain option price
            //###########################################################################################
            List <Contract>            AllContracts = new List <Contract>();
            List <CompleteTick_Struct> myMkt;


            // Create and send request
            foreach (Position_Struct pos in myPortfolio)
            {
                Contract tmpContract = ibClient.reqContractDetails(Toolkit.RndReqId(), pos.contract)[0].contractDetails.Summary;
                AllContracts.Add(tmpContract);
            }
            ibClient.SetMarketDataType(IntBrokerSocket.MarketDataType.Delayed);
            myMkt = ibClient.GetMktSnapShotData(AllContracts);


            return(myMkt);
        }