Пример #1
0
        static bool CreateAndOpenMarket15()
        {
            //创建 IMarket
            // char* path 指 xxx.exe 同级子目录中的 xxx.dll 文件
            int err = -1;

            market = ITradeApi.XFinApi_CreateMarketApi("XTA_W32/Api/CTP_v6.3.15_20190220/XFinApi.CTPTradeApiSE.dll", out err);

            if (err > 0 || market == null)
            {
                Console.WriteLine(string.Format("* Market XFinApiCreateError={0};", StrCreateErrors[err]));
                return(false);
            }

            //注册事件
            marketEvent = new MarketEvent();
            market.SetListener(marketEvent);

            //连接服务器
            OpenParams openParams = new OpenParams();

            openParams.HostAddress = CfgSE.MarketAddress;
            openParams.BrokerID    = CfgSE.BrokerID;
            openParams.UserID      = CfgSE.UserName;
            openParams.Password    = CfgSE.Password;
            openParams.IsUTF8      = true;
            market.Open(openParams);

            return(true);
        }
Пример #2
0
        //////////////////////////////////////////////////////////////////////////////////
        //行情测试
        static void MarketTest()
        {
            //创建 IMarket
            // char* path 指 xxx.exe 同级子目录中的 xxx.dll 文件
            int err = -1;

            market = ITradeApi.XFinApi_CreateMarketApi("XTA_W32/Api/XTP_v1.1.18.13_20180516/XFinApi.XTPTradeApi.dll", out err);


            if (err > 0 || market == null)
            {
                Console.WriteLine(string.Format("* Market XFinApiCreateError={0};", StrCreateErrors[err]));
                return;
            }

            //注册事件
            marketEvent = new MarketEvent();
            market.SetListener(marketEvent);

            //连接服务器
            OpenParams openParams = new OpenParams();

            openParams.HostAddress = Cfg.MarketAddress;
            openParams.UserID      = Cfg.UserName;
            openParams.Password    = Cfg.Password;
            openParams.Configs.Add("AuthCode", Cfg.AuthCode);
            openParams.Configs.Add("ClientID", Cfg.ClientID);//可选
            openParams.IsUTF8 = true;
            market.Open(openParams);

            /*
             * 连接成功后才能执行订阅行情等操作,检测方法有两种:
             * 1、IMarket.IsOpened()=true
             * 2、MarketListener.OnNotify中
             * (int)XFinApi.TradeApi.ActionKind.Open == notifyParams.ActionType &&
             * (int)ResultKind.Success == notifyParams.ResultType
             */

            /* 行情相关方法
             * while (!market.IsOpened())
             *   Thread.Sleep(1000);
             *
             * //订阅行情,已在MarketEvent.OnNotify中订阅
             * XFinApi.QueryParams param = new XFinApi.QueryParams();
             * param.ExchangeID = Cfg.ExchangeID;
             * param.InstrumentID = Cfg.InstrumentID;
             * market.Subscribe(param);
             *
             * //取消订阅行情
             * market.Unsubscribe(param);
             */
        }