Exemple #1
0
        private void UpdateContractListFromGrid(IList <IBSimplefiedContract> contracts, Grid grid)
        {
            contracts.Clear();
            // The last row is always empty
            for (var i = 1; i < grid.Rows.Count - 1; i++)
            {
                try {
                    var contract = new IBSimplefiedContract {
                        SecurityType = (IBSecurityType)grid[i, (int)IBGridColumn.SecType].Value,
                        Currency     = (string)grid[i, (int)IBGridColumn.Currency].Value,
                        Exchange     = (string)grid[i, (int)IBGridColumn.Exchange].Value,
                        Symbol       = (string)grid[i, (int)IBGridColumn.Symbol].Value,
                        Rollover     = (string)grid[i, (int)IBGridColumn.Rollover].Value,
                        PutOrCall    = (string)grid[i, (int)IBGridColumn.PutOrCall].Value
                    };

                    // SecurityType always has to be present...

                    // String fields are always "safe"

                    if (contract.SecurityType == IBSecurityType.FutureOption ||
                        contract.SecurityType == IBSecurityType.Option)
                    {
                        contract.Expiry     = (DateTime)grid[i, (int)IBGridColumn.Expiry].Value;
                        contract.Strike     = (double)grid[i, (int)IBGridColumn.Strike].Value;
                        contract.Multiplier = (int)grid[i, (int)IBGridColumn.Multiplier].Value;
                    }

                    if (contract.SecurityType == IBSecurityType.FutureOption)
                    {
                        contract.Expiry     = (DateTime)grid[i, (int)IBGridColumn.Expiry].Value;
                        contract.Multiplier = (int)grid[i, (int)IBGridColumn.Multiplier].Value;
                    }
                    contracts.Add(contract);
                }
                catch (NullReferenceException)
                {
                }
            }
        }
    private void UpdateContractListFromGrid(IList<IBSimplefiedContract> contracts, Grid grid)
    {
      contracts.Clear();
      // The last row is always empty
      for (var i = 1; i < grid.Rows.Count - 1; i++) {        
        try {
          var contract = new IBSimplefiedContract {
            SecurityType = (IBSecurityType) grid[i, (int) IBGridColumn.SecType].Value,
            Currency = (string) grid[i, (int) IBGridColumn.Currency].Value,
            Exchange = (string) grid[i, (int) IBGridColumn.Exchange].Value,
            Symbol = (string) grid[i, (int) IBGridColumn.Symbol].Value,
            Rollover = (string) grid[i, (int) IBGridColumn.Rollover].Value,
            PutOrCall = (string) grid[i, (int) IBGridColumn.PutOrCall].Value
          };

          // SecurityType always has to be present...

          // String fields are always "safe"

          if (contract.SecurityType == IBSecurityType.FutureOption ||
              contract.SecurityType == IBSecurityType.Option) {
            contract.Expiry = (DateTime) grid[i, (int) IBGridColumn.Expiry].Value;
            contract.Strike = (double) grid[i, (int) IBGridColumn.Strike].Value;
            contract.Multiplier = (int) grid[i, (int) IBGridColumn.Multiplier].Value;
          }

          if (contract.SecurityType == IBSecurityType.FutureOption) {
            contract.Expiry = (DateTime) grid[i, (int) IBGridColumn.Expiry].Value;
            contract.Multiplier = (int) grid[i, (int) IBGridColumn.Multiplier].Value;
          }
          contracts.Add(contract);
        }
        catch (NullReferenceException)
        {
        }
      }
    }