Ejemplo n.º 1
0
        public void FromAPILoginResult(LibTDBWrap.TDBDefine_ResLogin loginRes)
        {
            m_strInfo = LibWrapHelper.AnsiArr2String(loginRes.szInfo, 0, loginRes.szInfo.Length);

            if (loginRes.nMarkets > 0)
            {
                m_nDynDates = new int[loginRes.nMarkets];
                Debug.Assert(loginRes.nDynDate.Length >= loginRes.nMarkets);

                System.Array.Copy(loginRes.nDynDate, m_nDynDates, loginRes.nMarkets);

                m_strMarkets = new string[loginRes.nMarkets];

                Debug.Assert(loginRes.szMarket.Length >= 24 * loginRes.nMarkets);
                for (int i = 0; i < loginRes.nMarkets; i++)
                {
                    m_strMarkets[i] = LibWrapHelper.AnsiArr2String(loginRes.szMarket, i * 24, 24);
                }
            }
            else
            {
                m_nDynDates  = new int[0];
                m_strMarkets = new string[0];
            }
        }
Ejemplo n.º 2
0
        public int m_nType;          //证券类型,参考tdf 3.0文档中的证券索引表nType 说明

        public void FromAPICode(ref LibTDBWrap.TDBDefine_Code apiCode)
        {
            m_strWindCode = LibWrapHelper.AnsiArr2String(apiCode.chWindCode, 0, apiCode.chWindCode.Length);
            m_strCode     = LibWrapHelper.AnsiArr2String(apiCode.chCode, 0, apiCode.chCode.Length);
            m_strMarket   = LibWrapHelper.AnsiArr2String(apiCode.chMarket, 0, apiCode.chMarket.Length);
            m_strCNName   = LibWrapHelper.AnsiArr2String(apiCode.chCNName, 0, apiCode.chCNName.Length);
            m_strENName   = LibWrapHelper.AnsiArr2String(apiCode.chENName, 0, apiCode.chENName.Length);
            m_nType       = apiCode.nType;
        }
Ejemplo n.º 3
0
        public int[] m_nABVolume;          //订单明细

        public void FromAPIOrderQueue(ref LibTDBWrap.TDBDefine_OrderQueue apiOrderQueue)
        {
            m_strWindCode = LibWrapHelper.AnsiArr2String(apiOrderQueue.chWindCode, 0, apiOrderQueue.chWindCode.Length);
            m_strCode     = LibWrapHelper.AnsiArr2String(apiOrderQueue.chCode, 0, apiOrderQueue.chCode.Length);
            m_nDate       = apiOrderQueue.nDate;
            m_nTime       = apiOrderQueue.nTime;
            m_nSide       = apiOrderQueue.nSide;
            m_nPrice      = apiOrderQueue.nPrice;
            m_nOrderItems = apiOrderQueue.nOrderItems;
            m_nABItems    = apiOrderQueue.nABItems;
            m_nABVolume   = LibWrapHelper.CopyIntArr(apiOrderQueue.nABVolume);
        }
Ejemplo n.º 4
0
        public int m_nOrderVolume;          //委托数量

        public void FromAPIOrder(ref LibTDBWrap.TDBDefine_Order apiOrder)
        {
            m_strWindCode    = LibWrapHelper.AnsiArr2String(apiOrder.chWindCode, 0, apiOrder.chWindCode.Length);
            m_strCode        = LibWrapHelper.AnsiArr2String(apiOrder.chCode, 0, apiOrder.chCode.Length);
            m_nDate          = apiOrder.nDate;
            m_nTime          = apiOrder.nTime;
            m_nIndex         = apiOrder.nIndex;
            m_nOrder         = apiOrder.nOrder;
            m_chOrderKind    = (char)apiOrder.chOrderKind;
            m_chFunctionCode = (char)apiOrder.chFunctionCode;
            m_nOrderPrice    = apiOrder.nOrderPrice;
            m_nOrderVolume   = apiOrder.nOrderVolume;
        }
Ejemplo n.º 5
0
        public int m_nBidOrder;          //叫买序号

        public void FromAPITransaction(ref LibTDBWrap.TDBDefine_Transaction apiTransaction)
        {
            m_strWindCode    = LibWrapHelper.AnsiArr2String(apiTransaction.chWindCode, 0, apiTransaction.chWindCode.Length);
            m_strCode        = LibWrapHelper.AnsiArr2String(apiTransaction.chCode, 0, apiTransaction.chCode.Length);
            m_nDate          = apiTransaction.nDate;
            m_nTime          = apiTransaction.nTime;
            m_nIndex         = apiTransaction.nIndex;
            m_chFunctionCode = (char)apiTransaction.chFunctionCode;
            m_chOrderKind    = (char)apiTransaction.chOrderKind;
            m_chBSFlag       = (char)apiTransaction.chBSFlag;
            m_nTradePrice    = apiTransaction.nTradePrice;
            m_nTradeVolume   = apiTransaction.nTradeVolume;
            m_nAskOrder      = apiTransaction.nAskOrder;
            m_nBidOrder      = apiTransaction.nBidOrder;
        }
Ejemplo n.º 6
0
        public int m_nInterest;             //持仓量(期货)、IOPV(基金)、利息(债券)

        public void FromAPIKLine(ref LibTDBWrap.TDBDefine_KLine apiKLine)
        {
            m_strWindCode = LibWrapHelper.AnsiArr2String(apiKLine.chWindCode, 0, apiKLine.chWindCode.Length);
            m_strCode     = LibWrapHelper.AnsiArr2String(apiKLine.chCode, 0, apiKLine.chCode.Length);
            m_nDate       = apiKLine.nDate;
            m_nTime       = apiKLine.nTime;
            m_nOpen       = apiKLine.nOpen;
            m_nHigh       = apiKLine.nHigh;
            m_nLow        = apiKLine.nLow;
            m_nClose      = apiKLine.nClose;
            m_iVolume     = apiKLine.iVolume;
            m_iTurover    = apiKLine.iTurover;
            m_nMatchItems = apiKLine.nMatchItems;
            m_nInterest   = apiKLine.nInterest;
        }
Ejemplo n.º 7
0
        public int m_nHoldLines;              //持平品种数

        public void FromAPITick(ref LibTDBWrap.TDBDefine_Tick apiTick)
        {
            m_strWindCode = LibWrapHelper.AnsiArr2String(apiTick.chWindCode, 0, apiTick.chWindCode.Length);
            m_strCode     = LibWrapHelper.AnsiArr2String(apiTick.chCode, 0, apiTick.chCode.Length);
            m_nDate       = apiTick.nDate;
            m_nTime       = apiTick.nTime;
            m_nPrice      = apiTick.nPrice;
            m_iVolume     = apiTick.iVolume;
            m_iTurover    = apiTick.iTurover;
            m_nMatchItems = apiTick.nMatchItems;
            m_nInterest   = apiTick.nInterest;
            m_chTradeFlag = (char)apiTick.chTradeFlag;
            m_chBSFlag    = (char)apiTick.chBSFlag;
            m_iAccVolume  = apiTick.iAccVolume;
            m_iAccTurover = apiTick.iAccTurover;
            m_nHigh       = apiTick.nHigh;
            m_nLow        = apiTick.nLow;
            m_nOpen       = apiTick.nOpen;
            m_nPreClose   = apiTick.nPreClose;

            //期货字段
            m_nSettle      = apiTick.nSettle;
            m_nPosition    = apiTick.nPosition;
            m_nCurDelta    = apiTick.nCurDelta;
            m_nPreSettle   = apiTick.nPreSettle;
            m_nPrePosition = apiTick.nPrePosition;

            //买卖盘字段
            m_nAskPrice       = LibWrapHelper.CopyIntArr(apiTick.nAskPrice);
            m_nAskVolume      = LibWrapHelper.CopyUIntArr(apiTick.nAskVolume);
            m_nBidPrice       = LibWrapHelper.CopyIntArr(apiTick.nBidPrice);
            m_nBidVolume      = LibWrapHelper.CopyUIntArr(apiTick.nBidVolume);
            m_nAskAvPrice     = apiTick.nAskAvPrice;
            m_nBidAvPrice     = apiTick.nBidAvPrice;
            m_iTotalAskVolume = apiTick.iTotalAskVolume;
            m_iTotalBidVolume = apiTick.iTotalBidVolume;

            //指数字段
            m_nIndex     = apiTick.nIndex;
            m_nStocks    = apiTick.nStocks;
            m_nUps       = apiTick.nUps;
            m_nDowns     = apiTick.nDowns;
            m_nHoldLines = apiTick.nHoldLines;
        }