Exemplo n.º 1
0
 public void ReqQryQuotation(ref CWtpSymbolField pInstrumentID)
 {
     lock (locker)
     {
         MdApi.ReqQryQuotation(ref pInstrumentID);
     }
 }
Exemplo n.º 2
0
 private void OnRspQrySymbol_3(IntPtr pSymbol, int nCount)
 {
     CWtpSymbolField[] Symbols = new CWtpSymbolField[nCount];
     for (int i = 0; i < nCount; ++i)
     {
         Symbols[i] = (CWtpSymbolField)Marshal.PtrToStructure(
             (IntPtr)pSymbol.ToInt32() + i * Marshal.SizeOf(typeof(CWtpSymbolField)), typeof(CWtpSymbolField));
     }
     OnRspQrySymbol_1(this, ref Symbols, nCount);
 }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            //Thread.Sleep(10000);


            WtpMdApiWrapper md = new WtpMdApiWrapper();

            md.OnFrontConnected    += new OnFrontConnectedHandler(OnConnect);
            md.OnFrontDisconnected += new OnFrontDisconnectedHandler(OnDisconnect);
            md.OnRspUserLogin      += new OnRspUserLoginHandler(OnRspUserLogin);
            md.OnRspUserLogout     += new OnRspUserLogoutHandler(OnRspUserLogout);
            md.OnRspError          += new OnRspErrorHandler(OnRspError);

            md.OnRspQrySymbol    += new OnRspQrySymbolHandler(OnRspQrySymbol);
            md.OnRspQryQuotation += new OnRspQryQuotationHandler(OnRspQryQuotation);
            md.OnRtnQuotation    += new OnRtnQuotationHandler(OnRtnQuotation);

            md.RegisterFront("tcp://121.42.157.92:8863");

            Console.WriteLine(" 1.登录\n 2.登出\n 3.查合约列表\n 4.询价\n 5.订阅\n 6.取消订阅\n or.退出系统\n 请输入你的操作:");
            int chose;

            while ((chose = Convert.ToInt32(Console.ReadLine())) != 0)
            {
                //getchar();
                switch (chose)
                {
                case 1:
                {
                    CWtpReqUserLoginField ReqUserLoginField = new CWtpReqUserLoginField();
                    ReqUserLoginField.m_UserId   = "kiiik";
                    ReqUserLoginField.m_Password = "******";
                    md.ReqUserLogin(ref ReqUserLoginField);
                }
                break;

                case 2:
                {
                    CWtpUserLogoutField ReqUserLogoutField = new CWtpUserLogoutField();
                    ReqUserLogoutField.m_UserID = "kiiik";
                    md.ReqUserLogout(ref ReqUserLogoutField);
                }
                break;

                case 3:
                {
                    md.ReqQrySymbol();
                }
                break;

                case 4:
                {
                    CWtpSymbolField sym = new CWtpSymbolField();
                    sym.m_ExchangeId   = "SHFE";
                    sym.m_ProductId    = "CU";
                    sym.m_ContractDays = 30;
                    md.ReqQryQuotation(ref sym);
                }
                break;

                case 5:
                {
                    CWtpSymbolField[] syms = new CWtpSymbolField[7];
                    syms[0].m_ExchangeId   = "SHFE";
                    syms[0].m_ProductId    = "CU";
                    syms[0].m_ContractDays = 0;
                    syms[1].m_ExchangeId   = "SHFE";
                    syms[1].m_ProductId    = "CU";
                    syms[1].m_ContractDays = 30;
                    syms[2].m_ExchangeId   = "SHFE";
                    syms[2].m_ProductId    = "CU";
                    syms[2].m_ContractDays = 60;
                    syms[3].m_ExchangeId   = "SHFE";
                    syms[3].m_ProductId    = "CU";
                    syms[3].m_ContractDays = 90;
                    syms[4].m_ExchangeId   = "SHFE";
                    syms[4].m_ProductId    = "CU";
                    syms[4].m_ContractDays = 120;
                    syms[5].m_ExchangeId   = "SHFE";
                    syms[5].m_ProductId    = "CU";
                    syms[5].m_ContractDays = 150;
                    syms[6].m_ExchangeId   = "SHFE";
                    syms[6].m_ProductId    = "CU";
                    syms[6].m_ContractDays = 180;
                    md.ReqSubQuotation(ref syms);
                }
                break;

                case 6:
                {
                    CWtpSymbolField[] syms = new CWtpSymbolField[7];
                    syms[0].m_ExchangeId   = "SHFE";
                    syms[0].m_ProductId    = "CU";
                    syms[0].m_ContractDays = 0;
                    syms[1].m_ExchangeId   = "SHFE";
                    syms[1].m_ProductId    = "CU";
                    syms[1].m_ContractDays = 30;
                    syms[2].m_ExchangeId   = "SHFE";
                    syms[2].m_ProductId    = "CU";
                    syms[2].m_ContractDays = 60;
                    syms[3].m_ExchangeId   = "SHFE";
                    syms[3].m_ProductId    = "CU";
                    syms[3].m_ContractDays = 90;
                    syms[4].m_ExchangeId   = "SHFE";
                    syms[4].m_ProductId    = "CU";
                    syms[4].m_ContractDays = 120;
                    syms[5].m_ExchangeId   = "SHFE";
                    syms[5].m_ProductId    = "CU";
                    syms[5].m_ContractDays = 150;
                    syms[6].m_ExchangeId   = "SHFE";
                    syms[6].m_ProductId    = "CU";
                    syms[6].m_ContractDays = 180;
                    md.ReqUnSubQuotation(ref syms);
                }
                break;

                default:
                {
                    md.Dispose();
                }
                    return;
                }

                Thread.Sleep(1000);
                Console.WriteLine(" 1.登录\n 2.登出\n 3.查合约列表\n 4.询价\n 5.订阅\n 6.取消订阅\n or.退出系统\n 请输入你的操作:");
            }
            while (false)
            {
                ;
            }

            while (true)
            {
                ;
            }
        }