public CallResult <string[]> UnSubscribe(string[] codes) { string str = ""; if (codes != null && codes.Length > 0) { foreach (var s in codes) { str += s + ","; } } IntPtr r = TqapiDll.dapi_unsubscribe(handle, str); var cr = Marshal.PtrToStructure <TqapiDll.CallResultWrap>(r); CallResult <string[]> ret; if (cr.value_type != 0) { ret = new CallResult <string[]>(TqapiDll.CopyArray <string>(cr)); } else { ret = new CallResult <string[]>(cr.msg); } TqapiDll.destroy_callresult(r); return(ret); }
public CallResult <MarketQuote[]> GetTick(string code, int trading_day, int number) { IntPtr r = TqapiDll.dapi_get_tick(handle, code, trading_day, number); var cr = Marshal.PtrToStructure <TqapiDll.CallResultWrap>(r); CallResult <MarketQuote[]> ret; if (cr.value_type != 0) { ret = new CallResult <MarketQuote[]>(TqapiDll.CopyArray <MarketQuote>(cr)); } else { ret = new CallResult <MarketQuote[]>(cr.msg); } TqapiDll.destroy_callresult(r); return(ret); }
public CallResult <DailyBar[]> GetDailyBar(string code, string price_adj, bool align, int number) { IntPtr r = TqapiDll.dapi_get_daily_bar(handle, code, price_adj, align, number); var cr = Marshal.PtrToStructure <TqapiDll.CallResultWrap>(r); CallResult <DailyBar[]> ret; if (cr.value_type != 0) { ret = new CallResult <DailyBar[]>(TqapiDll.CopyArray <DailyBar>(cr)); } else { ret = new CallResult <DailyBar[]>(cr.msg); } TqapiDll.destroy_callresult(r); return(ret); }
public CallResult <Bar[]> GetBar(string code, string cycle, int trading_day, bool align) { IntPtr r = TqapiDll.dapi_get_bar(handle, code, cycle, trading_day, align); var cr = Marshal.PtrToStructure <TqapiDll.CallResultWrap>(r); CallResult <Bar[]> ret; if (cr.value_type != 0) { ret = new CallResult <Bar[]>(TqapiDll.CopyArray <Bar>(cr)); } else { ret = new CallResult <Bar[]>(cr.msg); } TqapiDll.destroy_callresult(r); return(ret); }
public CallResult <AccountInfo[]> QueryAccountStatus() { IntPtr r = TqapiDll.tapi_query_account_status(this.handle); var cr = Marshal.PtrToStructure <TqapiDll.CallResultWrap>(r); CallResult <AccountInfo[]> ret; if (cr.value_type != 0) { ret = new CallResult <AccountInfo[]>(TqapiDll.CopyArray <AccountInfo>(cr)); } else { ret = new CallResult <AccountInfo[]>(cr.msg); } TqapiDll.destroy_callresult(r); return(ret); }
public CallResult <Trade[]> QueryTrades(string account_id) { IntPtr r = TqapiDll.tapi_query_trades(this.handle, account_id); var cr = Marshal.PtrToStructure <TqapiDll.CallResultWrap>(r); CallResult <Trade[]> ret; if (cr.value_type != 0) { ret = new CallResult <Trade[]>(TqapiDll.CopyArray <Trade>(cr)); } else { ret = new CallResult <Trade[]>(cr.msg); } TqapiDll.destroy_callresult(r); return(ret); }