/// <summary> /// 创建TapQuoteAPI的接口对象。创建整个行情API的接口 /// </summary> /// <param name="appInfo">应用程序相关信息。</param> /// <param name="iResult">创建接口的错误码。</param> /// <returns>NULL 创建失败。!NULL 实现了ITapQuoteAPI接口的对象</returns> public static ITapQuoteAPI CreateTapQuoteAPI(TapAPIApplicationInfo appInfo, out int iResult) { global::System.IntPtr cPtr = QTapQuoteApiPINVOKE.CreateTapQuoteAPI(TapAPIApplicationInfo.getCPtr(appInfo), out iResult); ITapQuoteAPI ret = (cPtr == global::System.IntPtr.Zero) ? null : new ITapQuoteAPI(cPtr, false); if (QTapQuoteApiPINVOKE.SWIGPendingException.Pending) { throw QTapQuoteApiPINVOKE.SWIGPendingException.Retrieve(); } return(ret); }
public IMarketApi CreateMarketApi() { var appInfo = new TapAPIApplicationInfo() { AuthCode = _authCode, KeyOperationLogPath = _keyOperationLogPath }; int result = 0; _api = TapQuoteCppWrapper.CreateTapQuoteAPI(appInfo, ref result); return(new EsunnyMarketApi(_api)); }
public int InitQuoteAPI() { TapAPIApplicationInfo appInfo = new TapAPIApplicationInfo(); appInfo.AuthCode = Config.Cert.AuthCode; int iResult = 0; m_api = TapQuote.CreateTapQuoteAPI(appInfo, out iResult); if (m_api != null) { m_api.SetAPINotify(QuoteNotify); } return(iResult); }
public int InitQuoteAPI() { TapAPIApplicationInfo appInfo = new TapAPIApplicationInfo(); appInfo.AuthCode = "B112F916FE7D27BCE7B97EB620206457946CED32E26C1EAC946CED32E26C1EAC946CED32E26C1EAC946CED32E26C1EAC5211AF9FEE541DDE9D6F622F72E25D5DEF7F47AA93A738EF5A51B81D8526AB6A9D19E65B41F59D6A946CED32E26C1EACCAF8D4C61E28E2B1ABD9B8F170E14F8847D3EA0BF4E191F5DCB1B791E63DC196D1576DEAF5EC563CA3E560313C0C3411B45076795F550EB050A62C4F74D5892D2D14892E812723FAC858DEBD8D4AF9410729FB849D5D8D6EA48A1B8DC67E037381A279CE9426070929D5DA085659772E24A6F5EA52CF92A4D403F9E46083F27B19A88AD99812DADA44100324759F9FD1964EBD4F2F0FB50B51CD31C0B02BB437"; appInfo.KeyOperationLogPath = @"LogEsQuote"; int iResult = 0; m_api = QTapQuoteApi.CreateTapQuoteAPI(appInfo, out iResult); if (m_api != null) { m_api.SetAPINotify(QuoteNotify); } return(iResult); }
static void Main(string[] args) { Console.WriteLine("Start..."); var appInfo = new TapAPIApplicationInfo(); appInfo.AuthCode = "B112F916FE7D27BCE7B97EB620206457946CED32E26C1EAC946CED32E26C1EAC946CED32E26C1EAC946CED32E26C1EAC5211AF9FEE541DDE9D6F622F72E25D5DEF7F47AA93A738EF5A51B81D8526AB6A9D19E65B41F59D6A946CED32E26C1EACCAF8D4C61E28E2B1ABD9B8F170E14F8847D3EA0BF4E191F5DCB1B791E63DC196D1576DEAF5EC563CA3E560313C0C3411B45076795F550EB050A62C4F74D5892D2D14892E812723FAC858DEBD8D4AF9410729FB849D5D8D6EA48A1B8DC67E037381A279CE9426070929D5DA085659772E24A6F5EA52CF92A4D403F9E46083F27B19A88AD99812DADA44100324759F9FD1964EBD4F2F0FB50B51CD31C0B02BB437"; appInfo.KeyOperationLogPath = "\\log"; int result = 0; var api = TapQuoteCppWrapper.CreateTapQuoteAPI(appInfo, ref result); var quote = new TapQuoteAPINotifyImpl(); api.SetAPINotify(quote); api.SetHostAddress("222.88.40.170", 6161); var loginAuth = new TapAPIQuoteLoginAuth(); loginAuth.UserNo = ""; loginAuth.Password = ""; loginAuth.ISModifyPassword = '******'; loginAuth.ISDDA = 'N'; var err = api.Login(loginAuth); while (!quote.ApiReady) { Thread.Sleep(1000); Console.WriteLine("api not ready..."); } var contracts = GetTestContracts(); foreach (var contract in contracts) { api.SubscribeQuote(ref quote.SessionId, contract); } while (true) { Thread.Sleep(100); } Console.ReadKey(); }
public int InitTradeAPI() { TapAPIApplicationInfo appInfo = new TapAPIApplicationInfo(); appInfo.KeyOperationLogPath = "LogEsTrade"; appInfo.AuthCode = "67EA896065459BECDFDB924B29CB7DF1946CED32E26C1EAC946CED32E26C1EAC946CED32E26C1EAC946CED32E26C1EAC5211AF9FEE541DDE41BCBAB68D525B0D111A0884D847D57163FF7F329FA574E7946CED32E26C1EAC946CED32E26C1EAC733827B0CE853869ABD9B8F170E14F8847D3EA0BF4E191F5D97B3DFE4CCB1F01842DD2B3EA2F4B20CAD19B8347719B7E20EA1FA7A3D1BFEFF22290F4B5C43E6C520ED5A40EC1D50ACDF342F46A92CCF87AEE6D73542C42EC17818349C7DEDAB0E4DB16977714F873D505029E27B3D57EB92D5BEDA0A710197EB67F94BB1892B30F58A3F211D9C3B3839BE2D73FD08DD776B9188654853DDA57675EBB7D6FBBFC"; int iResult = -1; m_api = TapTradeWrapper.CreateITapTradeAPI(appInfo, out iResult); if (m_api != null) { try { var t = m_api.SetAPINotify(TradeNotify); }catch (Exception ex) { } } return(iResult); }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(TapAPIApplicationInfo obj) { return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr); }
static void Main(string[] args) { Console.WriteLine("TapTrade Test start"); var app = new TapAPIApplicationInfo(); app.AuthCode = "67EA896065459BECDFDB924B29CB7DF1946CED32E26C1EAC946CED32E26C1EAC946CED32E26C1EAC946CED32E26C1EAC5211AF9FEE541DDE41BCBAB68D525B0D111A0884D847D57163FF7F329FA574E7946CED32E26C1EAC946CED32E26C1EAC733827B0CE853869ABD9B8F170E14F8847D3EA0BF4E191F5D97B3DFE4CCB1F01842DD2B3EA2F4B20CAD19B8347719B7E20EA1FA7A3D1BFEFF22290F4B5C43E6C520ED5A40EC1D50ACDF342F46A92CCF87AEE6D73542C42EC17818349C7DEDAB0E4DB16977714F873D505029E27B3D57EB92D5BEDA0A710197EB67F94BB1892B30F58A3F211D9C3B3839BE2D73FD08DD776B9188654853DDA57675EBB7D6FBBFC"; app.KeyOperationLogPath = "\\log"; int iResult = 0; var api = TapTradeCppWrapper.CreateTapTradeAPI(app, ref iResult); if (api == null) { Console.WriteLine("Failed to create api"); return; } var trade = new TapTradeAPINotifyImpl(); api.SetAPINotify(trade); const string userName = "******"; api.SetHostAddress("123.15.58.21", 6060); var loginAuth = new TapAPITradeLoginAuth(); loginAuth.UserNo = userName; loginAuth.Password = "******"; loginAuth.ISModifyPassword = '******'; loginAuth.ISDDA = 'N'; var err = api.Login(loginAuth); while (!trade.ApiReady) { Thread.Sleep(1000); Console.WriteLine("api not ready..."); } var order = new TapAPINewOrder(); order.AccountNo = userName; order.ExchangeNo = "CFFEX"; order.CommodityType = 'F'; order.CommodityNo = "IF"; order.ContractNo = "1803"; order.StrikePrice = ""; order.CallOrPutFlag = 'N'; order.ContractNo2 = ""; order.StrikePrice2 = ""; order.CallOrPutFlag2 = 'N'; order.OrderType = '1'; order.OrderSource = 'A'; order.TimeInForce = '0'; order.ExpireTime = ""; order.IsRiskOrder = 'N'; order.OrderSide = 'B'; order.PositionEffect = 'O'; order.PositionEffect2 = 'N'; order.InquiryNo = ""; order.HedgeFlag = 'T'; order.OrderPrice = 0.0; order.OrderQty = 1; order.TacticsType = 'N'; order.TriggerCondition = 'N'; order.TriggerPriceType = 'N'; order.AddOneIsValid = 'N'; order.HedgeFlag2 = 'N'; order.MarketLevel = 0; order.OrderDeleteByDisConnFlag = 'N'; api.InsertOrder(ref trade.SessionId, order); while (true) { Thread.Sleep(100); } }