Пример #1
0
 public static void SetInstrumentGuidMapping(this DataSet ds)
 {
     try
     {
         if (ds == null)
         {
             return;
         }
         DataTable table = ds.Tables[InstrumentConstants.InstrumentTableName];
         if (table == null)
         {
             return;
         }
         DataColumn column = new DataColumn();
         column.ColumnName    = InstrumentConstants.IntForIntrumentIDColumnName;
         column.DataType      = typeof(Int32);
         column.AutoIncrement = false;
         table.Columns.Add(column);
         DataRowCollection rowCol = table.Rows;
         for (int rowIndex = 0; rowIndex < rowCol.Count; rowIndex++)
         {
             DataRow dr        = rowCol[rowIndex];
             Guid    id        = (Guid)dr[InstrumentConstants.InstrumentIDColumnName];
             int     mappingId = GuidMapping.Add(id);
             dr[InstrumentConstants.IntForIntrumentIDColumnName] = mappingId;
         }
     }
     catch (Exception ex)
     {
         _Logger.Error(ex);
     }
 }
Пример #2
0
        public static void Serialize(Guid value, char[] buf, int start)
        {
            var map = new GuidMapping(value);
            var a   = map.A;
            var l   = Lookup[(a >> 24) & 255];

            buf[start]     = l.First;
            buf[start + 1] = l.Second;
            l = Lookup[(a >> 16) & 255];
            buf[start + 2] = l.First;
            buf[start + 3] = l.Second;
            l = Lookup[(a >> 8) & 255];
            buf[start + 4] = l.First;
            buf[start + 5] = l.Second;
            l = Lookup[a & 255];
            buf[start + 6] = l.First;
            buf[start + 7] = l.Second;
            buf[start + 8] = '-';
            var b = map.B;

            l = Lookup[(b >> 8) & 255];
            buf[start + 9]  = l.First;
            buf[start + 10] = l.Second;
            l = Lookup[b & 255];
            buf[start + 11] = l.First;
            buf[start + 12] = l.Second;
            buf[start + 13] = '-';
            var c = map.C;

            l = Lookup[(c >> 8) & 255];
            buf[start + 14] = l.First;
            buf[start + 15] = l.Second;
            l = Lookup[c & 255];
            buf[start + 16] = l.First;
            buf[start + 17] = l.Second;
            buf[start + 18] = '-';
            var d = map.D;

            l = Lookup[d];
            buf[start + 19] = l.First;
            buf[start + 20] = l.Second;
            var e = map.E;

            l = Lookup[e];
            buf[start + 21] = l.First;
            buf[start + 22] = l.Second;
            buf[start + 23] = '-';
            var f = map.F;

            l = Lookup[f];
            buf[start + 24] = l.First;
            buf[start + 25] = l.Second;
            var g = map.G;

            l = Lookup[g];
            buf[start + 26] = l.First;
            buf[start + 27] = l.Second;
            var h = map.H;

            l = Lookup[h];
            buf[start + 28] = l.First;
            buf[start + 29] = l.Second;
            var i = map.I;

            l = Lookup[i];
            buf[start + 30] = l.First;
            buf[start + 31] = l.Second;
            var j = map.J;

            l = Lookup[j];
            buf[start + 32] = l.First;
            buf[start + 33] = l.Second;
            var k = map.K;

            l = Lookup[k];
            buf[start + 34] = l.First;
            buf[start + 35] = l.Second;
        }
Пример #3
0
        public static void Serialize(Guid value, TextWriter sw, char[] buffer)
        {
            var map = new GuidMapping(value);

            buffer[0] = '"';
            var a = map.A;
            var l = Lookup[(a >> 24) & 255];

            buffer[1] = l.First;
            buffer[2] = l.Second;
            l         = Lookup[(a >> 16) & 255];
            buffer[3] = l.First;
            buffer[4] = l.Second;
            l         = Lookup[(a >> 8) & 255];
            buffer[5] = l.First;
            buffer[6] = l.Second;
            l         = Lookup[a & 255];
            buffer[7] = l.First;
            buffer[8] = l.Second;
            buffer[9] = '-';
            var b = map.B;

            l          = Lookup[(b >> 8) & 255];
            buffer[10] = l.First;
            buffer[11] = l.Second;
            l          = Lookup[b & 255];
            buffer[12] = l.First;
            buffer[13] = l.Second;
            buffer[14] = '-';
            var c = map.C;

            l          = Lookup[(c >> 8) & 255];
            buffer[15] = l.First;
            buffer[16] = l.Second;
            l          = Lookup[c & 255];
            buffer[17] = l.First;
            buffer[18] = l.Second;
            buffer[19] = '-';
            var d = map.D;

            l          = Lookup[d];
            buffer[20] = l.First;
            buffer[21] = l.Second;
            var e = map.E;

            l          = Lookup[e];
            buffer[22] = l.First;
            buffer[23] = l.Second;
            buffer[24] = '-';
            var f = map.F;

            l          = Lookup[f];
            buffer[25] = l.First;
            buffer[26] = l.Second;
            var g = map.G;

            l          = Lookup[g];
            buffer[27] = l.First;
            buffer[28] = l.Second;
            var h = map.H;

            l          = Lookup[h];
            buffer[29] = l.First;
            buffer[30] = l.Second;
            var i = map.I;

            l          = Lookup[i];
            buffer[31] = l.First;
            buffer[32] = l.Second;
            var j = map.J;

            l          = Lookup[j];
            buffer[33] = l.First;
            buffer[34] = l.Second;
            var k = map.K;

            l          = Lookup[k];
            buffer[35] = l.First;
            buffer[36] = l.Second;
            buffer[37] = '"';
            sw.Write(buffer, 0, 38);
        }
Пример #4
0
 private static void Initialize(Instrument instrument, DataRow dataRow)
 {
     instrument.Id                      = (Guid)dataRow["ID"];
     instrument.OriginCode              = (string)dataRow["OriginCode"];
     instrument.Code                    = (string)dataRow["Code"];
     instrument.Description             = (string)dataRow["Description"];
     instrument.Denominator             = (int)dataRow["Denominator"];
     instrument.NumeratorUnit           = (int)dataRow["NumeratorUnit"];
     instrument.CommissionFormula       = (byte)dataRow["CommissionFormula"];
     instrument.TradePLFormula          = (byte)dataRow["TradePLFormula"];
     instrument.OrderTypeMask           = (int)dataRow["OrderTypeMask"];
     instrument.IsNormal                = (bool)dataRow["IsNormal"];
     instrument.MaxDQLot                = dataRow.GetItemValue <decimal>("MaxDQLot", 0);
     instrument.MaxOtherLot             = dataRow.GetItemValue <decimal>("MaxOtherLot", 0);
     instrument.CurrencyId              = (Guid)dataRow["CurrencyID"];
     instrument.PriceValidTime          = (int)dataRow["PriceValidTime"];
     instrument.DqQuoteMinLot           = dataRow.GetItemValue <decimal>("DQQuoteMinLot", 0);
     instrument.IsSinglePrice           = (bool)dataRow["IsSinglePrice"];
     instrument.LastAcceptTimeSpan      = TimeSpan.FromMinutes((int)dataRow["LastAcceptTimeSpan"]);
     instrument.BeginTime               = (DateTime)dataRow["BeginTime"];
     instrument.EndTime                 = (DateTime)dataRow["EndTime"];
     instrument.AcceptDQVariation       = (int)dataRow["AcceptDQVariation"];
     instrument.AcceptLmtVariation      = (int)dataRow["AcceptLmtVariation"];
     instrument.AcceptCloseLmtVariation = (int)dataRow["AcceptCloseLmtVariation"];
     instrument.CancelLmtVariation      = (int)dataRow["CancelLmtVariation"];
     instrument.AcceptIfDoneVariation   = (int)dataRow["AcceptIfDoneVariation"];
     instrument.PriceType               = dataRow["PriceType"].ToEnum <PriceType>();
     //instrument.IsHasDocument = (bool)dataRow["IsHasDocument"];
     instrument.Sequence         = (int)dataRow["Sequence"];
     instrument.DayOpenTime      = dataRow.GetItemValue <DateTime?>("DayOpenTime", null);
     instrument.DayCloseTime     = dataRow.GetItemValue <DateTime?>("DayCloseTime", null);
     instrument.LastDayCloseTime = dataRow.GetItemValue <DateTime?>("LastDayCloseTime", null);
     instrument.NextDayOpenTime  = dataRow.GetItemValue <DateTime?>("NextDayOpenTime", null);
     instrument.MocTime          = dataRow.GetItemValue <DateTime?>("MOCTime", null);
     instrument.LastTradeDay     = dataRow.GetItemValue <DateTime?>("LastTradeDay", null);
     instrument.IsActive         = (bool)dataRow["IsActive"];
     instrument.Category         = dataRow["Category"].ToEnum <InstrumentCategory>();
     instrument.CanPlacePendingOrderAtAnyTime = (bool)dataRow["CanPlacePendingOrderAtAnyTime"];
     if (dataRow.Table.Columns.Contains("ExternalExchangeCode"))
     {
         instrument.ExternalExchangeCode = dataRow.GetItemValue <string>("ExternalExchangeCode", null);
     }
     if (dataRow.Table.Columns.Contains("GroupID"))
     {
         instrument.GroupId = dataRow.GetItemValue <Guid?>("GroupID", null);
     }
     instrument.MarginFormula        = (byte)dataRow["MarginFormula"];
     instrument.SequenceForQuotatoin = GuidMapping.Add(instrument.Id);
     instrument.AllowedNewTradeSides = Convert.ToInt16(dataRow["AllowedNewTradeSides"]);
     instrument.Unit = dataRow.GetItemValue <string>("Unit", "");
     instrument.PhysicalLotDecimal = dataRow.GetItemValue <byte>("PhysicalLotDecimal", 0);
     instrument.Narrative          = dataRow.GetItemValue <string>("Narrative", "");
     instrument.QuoteDescription   = dataRow.GetItemValue <string>("QuoteDescription", "");
     if (dataRow.Table.Columns.Contains("DeliveryTimeBeginDay"))
     {
         instrument.DeliveryTimeBeginDay = dataRow.GetItemValue <int>("DeliveryTimeBeginDay", 0);
     }
     if (dataRow.Table.Columns.Contains("DeliveryTimeEndDay"))
     {
         instrument.DeliveryTimeEndDay = dataRow.GetItemValue <int>("DeliveryTimeEndDay", 0);
     }
     if (dataRow.Table.Columns.Contains("DeliveryPointGroupId") && dataRow["DeliveryPointGroupId"] != DBNull.Value)
     {
         instrument.DeliveryPointGroupId = (Guid)dataRow["DeliveryPointGroupId"];
     }
 }
Пример #5
0
		public static void Serialize(Guid value, char[] buf, int start)
		{
			var map = new GuidMapping(value);
			var a = map.A;
			var l = Lookup[(a >> 24) & 255];
			buf[start] = l.First;
			buf[start + 1] = l.Second;
			l = Lookup[(a >> 16) & 255];
			buf[start + 2] = l.First;
			buf[start + 3] = l.Second;
			l = Lookup[(a >> 8) & 255];
			buf[start + 4] = l.First;
			buf[start + 5] = l.Second;
			l = Lookup[a & 255];
			buf[start + 6] = l.First;
			buf[start + 7] = l.Second;
			buf[start + 8] = '-';
			var b = map.B;
			l = Lookup[(b >> 8) & 255];
			buf[start + 9] = l.First;
			buf[start + 10] = l.Second;
			l = Lookup[b & 255];
			buf[start + 11] = l.First;
			buf[start + 12] = l.Second;
			buf[start + 13] = '-';
			var c = map.C;
			l = Lookup[(c >> 8) & 255];
			buf[start + 14] = l.First;
			buf[start + 15] = l.Second;
			l = Lookup[c & 255];
			buf[start + 16] = l.First;
			buf[start + 17] = l.Second;
			buf[start + 18] = '-';
			var d = map.D;
			l = Lookup[d];
			buf[start + 19] = l.First;
			buf[start + 20] = l.Second;
			var e = map.E;
			l = Lookup[e];
			buf[start + 21] = l.First;
			buf[start + 22] = l.Second;
			buf[start + 23] = '-';
			var f = map.F;
			l = Lookup[f];
			buf[start + 24] = l.First;
			buf[start + 25] = l.Second;
			var g = map.G;
			l = Lookup[g];
			buf[start + 26] = l.First;
			buf[start + 27] = l.Second;
			var h = map.H;
			l = Lookup[h];
			buf[start + 28] = l.First;
			buf[start + 29] = l.Second;
			var i = map.I;
			l = Lookup[i];
			buf[start + 30] = l.First;
			buf[start + 31] = l.Second;
			var j = map.J;
			l = Lookup[j];
			buf[start + 32] = l.First;
			buf[start + 33] = l.Second;
			var k = map.K;
			l = Lookup[k];
			buf[start + 34] = l.First;
			buf[start + 35] = l.Second;
		}
Пример #6
0
		public static void Serialize(Guid value, TextWriter sw, char[] buffer)
		{
			var map = new GuidMapping(value);
			buffer[0] = '"';
			var a = map.A;
			var l = Lookup[(a >> 24) & 255];
			buffer[1] = l.First;
			buffer[2] = l.Second;
			l = Lookup[(a >> 16) & 255];
			buffer[3] = l.First;
			buffer[4] = l.Second;
			l = Lookup[(a >> 8) & 255];
			buffer[5] = l.First;
			buffer[6] = l.Second;
			l = Lookup[a & 255];
			buffer[7] = l.First;
			buffer[8] = l.Second;
			buffer[9] = '-';
			var b = map.B;
			l = Lookup[(b >> 8) & 255];
			buffer[10] = l.First;
			buffer[11] = l.Second;
			l = Lookup[b & 255];
			buffer[12] = l.First;
			buffer[13] = l.Second;
			buffer[14] = '-';
			var c = map.C;
			l = Lookup[(c >> 8) & 255];
			buffer[15] = l.First;
			buffer[16] = l.Second;
			l = Lookup[c & 255];
			buffer[17] = l.First;
			buffer[18] = l.Second;
			buffer[19] = '-';
			var d = map.D;
			l = Lookup[d];
			buffer[20] = l.First;
			buffer[21] = l.Second;
			var e = map.E;
			l = Lookup[e];
			buffer[22] = l.First;
			buffer[23] = l.Second;
			buffer[24] = '-';
			var f = map.F;
			l = Lookup[f];
			buffer[25] = l.First;
			buffer[26] = l.Second;
			var g = map.G;
			l = Lookup[g];
			buffer[27] = l.First;
			buffer[28] = l.Second;
			var h = map.H;
			l = Lookup[h];
			buffer[29] = l.First;
			buffer[30] = l.Second;
			var i = map.I;
			l = Lookup[i];
			buffer[31] = l.First;
			buffer[32] = l.Second;
			var j = map.J;
			l = Lookup[j];
			buffer[33] = l.First;
			buffer[34] = l.Second;
			var k = map.K;
			l = Lookup[k];
			buffer[35] = l.First;
			buffer[36] = l.Second;
			buffer[37] = '"';
			sw.Write(buffer, 0, 38);
		}