示例#1
0
                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);
                }
示例#2
0
                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);
                }
示例#3
0
                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);
                }
示例#4
0
文件: TqapiDll.cs 项目: ongbe/tqapi
                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);
                }
示例#5
0
                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);
                }
示例#6
0
文件: TqapiDll.cs 项目: ongbe/tqapi
                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);
                }