Beispiel #1
0
        public BitmexInstrumentSettings[] GetInstrumentSettings()
        {
            string url;
            var    param       = "columns=symbol%2CtickSize%2CmakerFee%2CtakerFee%2CsettlementFee&start=0&count=500";
            var    args        = CreateParameters(HttpMethod.Get, "/instrument", param, out url);
            var    query       = UserQuery(url, HttpMethod.Get, args);
            var    instruments = JsonConvert.DeserializeObject <BitmexInstrumentSettings[]>(query.Content);
            int    idx         = 0;

            foreach (var inst in instruments)
            {
                BitmexInstrumentSettings item = null;
                for (; idx < instruments.Length; idx++)
                {
                    if (instruments[idx].Symbol == inst.Symbol)
                    {
                        item = instruments[idx];
                        break;
                    }
                }
                if (item == null)
                {
                    throw new InvalidOperationException(String.Format("Instrument '{0}' wasn't found", inst.Symbol));
                }

                inst.Index = idx;
            }
            return(instruments);
        }
Beispiel #2
0
        public void Initialize(BitmexInstrumentSettings setting)
        {
            var symbol = setting.Symbol;

            _tickSizes[symbol] = setting.TickSize.Value;
            _indexes[symbol]   = setting.Index.Value;
            _bids[symbol]      = new SortedList <long, double>();
        }
Beispiel #3
0
 public void SetCommission(BitmexInstrumentSettings setting)
 {
     if (setting == null)
     {
         throw new ArgumentNullException("Commission is undefined");
     }
     _setting = setting;
 }
 public void SetInstruments(BitmexInstrumentSettings setting)
 {
     _bookL2.Initialize(setting);
 }