Exemple #1
0
    public DataTable GetIndexWeights(string code, DateTime endDate)
    {
        DateTime        monthEndDate = new DateTime(endDate.Year, endDate.Month, 1).AddDays(-1);
        CHServiceClient client       = new CHServiceClient();

        return(client.GetIndexWeights(code, monthEndDate).Tables[0]);
    }
Exemple #2
0
    public DataTable GetMarketNewsContent(string newsId)
    {
        CHServiceClient client = new CHServiceClient();
        DataTable       dt     = client.GetMarketNewsContent(newsId).Tables[0];

        return(dt);
    }
Exemple #3
0
    public DataTable GetUnderwriters(string codes)
    {
        //codes=('000001','600000')

        CHServiceClient client = new CHServiceClient();
        string          sql    = @"SELECT A.Symbol
                    ,A.Sname
                    ,E.EVENTPARTY3 AS Type
                    ,E.EVENTPARTY5 AS Underwriter
                    FROM (SELECT * FROM SECURITYCODE WHERE STYPE='EQA') A 
                    INNER JOIN SIAIPO B
                         ON A.COMPANYCODE=B.COMPANYCODE 
                    LEFT JOIN (SELECT * FROM SIIDATE WHERE DATETYPECODE='0103')C
                         ON B.COMPANYCODE=C.COMPANYCODE AND B.SIBASEINFOID=C.SIBASEINFOID
                    LEFT JOIN (
                              SELECT * 
                                FROM EVENTPARTY 
                                WHERE EVENTPARTY1='01' 
                                AND EVENTPARTY2 IN ('017','037')
                              ) E
                         ON E.COMPANYCODE=A.COMPANYCODE AND E.EVENTID=C.SIBASEINFOID
                    WHERE 1=1
                    AND Symbol IN " + codes + @"
                    ORDER BY Listdate DESC,Symbol,EVENTPARTY3 DESC
                    ";

        DataTable dtOutput = client.ExecuteSQL(sql).Tables[0];

        return(dtOutput);
    }
Exemple #4
0
    public DataTable GetMarketNews(List <string> codeList)
    {
        DateTime end   = DateTime.Today;
        DateTime start = DateTime.Today.AddDays(-14);

        CHServiceClient client = new CHServiceClient();

        if (codeList == null || codeList.Count == 0)
        {
            return(null);
        }

        DataTable dtOutput = null;
        string    codes    = "";

        foreach (string code in codeList)
        {
            codes += code + ",";
        }

        dtOutput = client.GetMarketNews(start, end, codes.Substring(0, codes.Length - 1)).Tables[0];

        if (dtOutput != null)
        {
            //dtOutput.DefaultView.Sort = "trade_dt desc, s_info_windcode";
            dtOutput = dtOutput.DefaultView.ToTable();
        }

        return(dtOutput);
    }
Exemple #5
0
    public DataTable GetStockPrices(DateTime startDate, DateTime endDate)
    {
        CHServiceClient client = new CHServiceClient();
        DataSet         dsPrices;
        DataTable       dtOutput = null;

        int i = 0, pageSize = 20;

        while (startDate.AddDays(pageSize * i) <= endDate)
        {
            DateTime start, end;
            start    = (startDate.AddDays(i * pageSize));
            end      = (startDate.AddDays(pageSize * (i + 1) - 1) > endDate) ? endDate : startDate.AddDays(pageSize * (i + 1) - 1);
            dsPrices = client.GetStockPrices(start, end, null);

            if (dtOutput == null)
            {
                dtOutput = dsPrices.Tables[0].Copy();
            }
            else
            {
                foreach (DataRow oRow in dsPrices.Tables[0].Rows)
                {
                    dtOutput.ImportRow(oRow);
                }
            }

            i++;
        }

        return(dtOutput);
    }
Exemple #6
0
    //首发,增发
    public DataTable GetIPOSEO(DateTime start, DateTime end)
    {
        CHServiceClient client = new CHServiceClient();
        DataTable       dt     = client.GetIPOSEO(start, end, null).Tables[0];

        dt.DefaultView.Sort = "s_fellow_offeringdate desc, s_info_windcode";
        return(dt.DefaultView.ToTable());
    }
Exemple #7
0
    public DataTable GetStrangeTrade(DateTime start, DateTime end)
    {
        CHServiceClient client = new CHServiceClient();
        DataTable       dt     = client.GetStrangeTrade(start, end, null).Tables[0];

        dt.DefaultView.Sort = "s_strange_enddate desc, s_info_windcode, s_strange_type, s_strange_trade, s_strange_buyamount desc, s_strange_sellamount desc";
        return(dt.DefaultView.ToTable());
    }
Exemple #8
0
    public DataTable GetMarginTrade(DateTime start, DateTime end)
    {
        CHServiceClient client = new CHServiceClient();
        DataTable       dt     = client.GetMarginTrade(start, end, null).Tables[0];

        dt.DefaultView.Sort = "trade_dt desc, s_margin_salesofborrowedsec desc";
        return(dt.DefaultView.ToTable());
    }
Exemple #9
0
    public DataTable GetBlockTrade(DateTime start, DateTime end)
    {
        CHServiceClient client = new CHServiceClient();
        DataTable       dt     = client.GetBlockTrade(start, end, null).Tables[0];

        dt.DefaultView.Sort = "trade_dt desc, s_block_amount desc";
        return(dt.DefaultView.ToTable());
    }
Exemple #10
0
    public DataTable GetRestrictStock(DateTime start, DateTime end)
    {
        end = end.AddDays(90);
        CHServiceClient client = new CHServiceClient();
        DataTable       dt     = client.GetRestrictStock(start, end, null).Tables[0];

        dt.DefaultView.Sort = "s_info_listdate, s_share_lst_amount desc";
        return(dt.DefaultView.ToTable());
    }
Exemple #11
0
    public DataTable GetFundBenchmark(string fundcode, string dates)
    {
        CHServiceClient client = new CHServiceClient();
        string          sql    = @"Select Symbol, Tdate, FundBDY1 AS BMYield, FundBDY2 AS BMIndex
                        From FundBDY 
                        Where symbol IN ('" + fundcode + @"')
                        AND Tdate IN (" + dates + @")
                        Order by symbol, tdate Desc";

        DataSet ds = client.ExecuteSQL(sql);

        return(ds.Tables[0]);
    }
Exemple #12
0
    public DataTable GetChinaBondList(string code)
    {
        CHServiceClient client = new CHServiceClient();

        if (code.Contains(","))
        {
            return(client.GetChinaBondsList(code).Tables[0]);
        }
        else
        {
            return(client.GetChinaBondList(code, null).Tables[0]);
        }
    }
Exemple #13
0
 public DataTable GetActiveStockList()
 {
     try
     {
         DataTable       dtStockList;
         CHServiceClient client = new CHServiceClient();
         dtStockList = client.GetAShareStockList(null, null, null, "1").Tables[0];
         return(dtStockList);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Exemple #14
0
    public DataTable GetConvertables()
    {
        CHServiceClient client = new CHServiceClient();
        string          sql    = @"SELECT S.SYMBOL
                        ,S.SNAME
                        ,F.SYMBOL_COMP_CODE AS PurchaseCodeOnNet
                        ,BONDDT18 AS Stockcode
                        ,S2.Sname AS StockName
                        ,S.EXCHANGE
                        ,DECLAREDATE
                        ,BONDISSUE11 AS PaymentDate
                        ,BONDISSUE27 AS ListDate
                        ,BONDISSUE7 AS IssuePlan
                        ,BONDISSUE9 AS IssuePrice
                        ,BISSUE_BDC35 AS DownLimitOnNet
                        ,BISSUE_BDC36 AS UpLimitOnNet
                        ,BISSUE_BDC44 AS DownLimitUnderNet
                        ,BISSUE_BDC45 AS StepUnderNet
                        ,BISSUE_BDC46 AS UpLimitUnderNet
                        ,BISSUE_BDC10 AS ShareRight --每股优先配售金额
                        ,BISSUE_BDC39 AS WinRateOnNet
                        ,BISSUE_BDC47 AS DownpaymentRate
                        ,BISSUE_BDC47/100 AS DownpaymentRate0
                        ,BISSUE_BDC52 AS WinRateUnderNet
                        ,BISSUE_BDC52/100 AS WinRateUnderNet0
                        ,OEBondChange2 AS ConvertStart
                        ,OEBondChange4 AS StrikePrice
                        FROM (SELECT * FROM SECURITYCODE WHERE STYPE = 'BDC') S
                        INNER JOIN (SELECT * FROM BONDDT WHERE BONDDT2='04') A  
                             ON CASE WHEN EXCHANGE = 'CNSESH' THEN BONDDT16 ELSE BONDDT17 END = SYMBOL
                        INNER JOIN (SELECT * FROM SECURITYCODE WHERE STYPE = 'EQA') S2
                             ON S2.Symbol = BONDDT18
                        INNER JOIN BONDISSUE B
                             ON A.BCODE=B.BCODE
                        LEFT JOIN BISSUE_BDC C
                             ON B.BCODE=C.BCODE
                        LEFT JOIN (Select * FROM OEBondChange WHERE OEBondChange1 ='初始转股价') D
                             ON A.BCODE=D.BondCode
                        LEFT JOIN (SELECT * FROM SYMBOL_COMP WHERE SYMBOL_COMP_TYPE ='19') F
                             ON S.Symbol = F.Symbol
                        WHERE 1=1
                        AND DECLAREDATE > (sysdate - 365) 
                        ORDER BY DECLAREDATE DESC";

        DataTable dtOutput = client.ExecuteSQL(sql).Tables[0];

        return(dtOutput);
    }
Exemple #15
0
 public DataTable GetActiveBondList()
 {
     try
     {
         DataTable       dtBondList;
         CHServiceClient client = new CHServiceClient();
         dtBondList = client.GetChinaBondList(null, null).Tables[0];
         dtBondList.DefaultView.RowFilter = "b_info_maturitydate >='" + DateTime.Today.ToString("yyyyMMdd") + "'";
         dtBondList = dtBondList.DefaultView.ToTable();
         return(dtBondList);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Exemple #16
0
    public DataTable GetIPOCodes()
    {
        string sql = @"SELECT A.Symbol,A.SName,C3.BEGINDATE AS PurchaseDate
                ,A.Symbol || ' - ' || A.SName || ' | 询价:' || to_char(C.ENDDATE,'yyyy-MM-dd') || ' - 申购:' || to_char(C3.BEGINDATE,'yyyy-MM-dd') AS Name
            FROM (SELECT * FROM SECURITYCODE WHERE STYPE='EQA') A
            INNER JOIN SIAIPO B
                    ON A.COMPANYCODE=B.COMPANYCODE
            LEFT JOIN (SELECT * FROM SIIDATE WHERE DATETYPECODE='0103')C
                 ON B.COMPANYCODE=C.COMPANYCODE AND B.SIBASEINFOID=C.SIBASEINFOID 
            LEFT JOIN (SELECT * FROM SIIDATE WHERE DATETYPECODE='0117')C3
                    ON B.COMPANYCODE=C3.COMPANYCODE AND B.SIBASEINFOID=C3.SIBASEINFOID
            WHERE 1=1
            AND C3.BEGINDATE > (sysdate - 30) 
            ORDER BY C3.BEGINDATE DESC, A.Symbol
            ";

        CHServiceClient client   = new CHServiceClient();
        DataTable       dtOutput = client.ExecuteSQL(sql).Tables[0];

        return(dtOutput);
    }
Exemple #17
0
    public DataTable GetIndexPrices(DateTime startDate, DateTime endDate, string code)
    {
        CHServiceClient client = new CHServiceClient();

        return(client.GetIndexPrices(startDate, endDate, code).Tables[0]);
    }
Exemple #18
0
    public DataTable GetSWIndustryList()
    {
        CHServiceClient client = new CHServiceClient();

        return(client.GetSWIndustryList().Tables[0]);
    }
Exemple #19
0
    public DataTable GetTradingDaysList(DateTime start, DateTime end)
    {
        CHServiceClient client = new CHServiceClient();

        return(client.GetTradingDays(start, end).Tables[0]);
    }
Exemple #20
0
    public DataTable GetIPOs(string code)
    {
        string sqlDateRestrict = " AND C3.BEGINDATE > (sysdate - 100) ";

        if (code.Length > 0)
        {
            sqlDateRestrict = " AND (A.Symbol='" + code + @"' OR SYMBOL_COMP_CODE = '" + code + @"')";
        }

        CHServiceClient client = new CHServiceClient();
        string          sql    = @"SELECT A.Symbol,A.SName
            ,F.IndustryChg4 AS Industry
            ,F.IndustryChg8 AS IndustryCode
            ,H1.PE2_M1 AS IndPEOnStart
            ,H2.PE2_M1 AS IndPELatest
            ,G.Sibaseinfo8 AS IssuePrice
            ,G.Sibaseinfo9 AS TotalCapitalBeforeIPO
            ,G.Sibaseinfo10 AS ActualIssuedCapital
            ,SIAIPO78 AS ActualTransferredCapital
            ,SIAIPO2 AS PlannedIssueCapital
            ,SIAIPO77 AS PlannedTransferCapital
            ,Substr(F.IndustryChg4,1,4) AS Industry0
            ,SYMBOL_COMP_CODE AS PurchaseCodeOnNet
            ,C.BEGINDATE AS QuoteStart
            ,C.ENDDATE AS QuoteEnd
            ,C2.BEGINDATE AS PurchaseStart
            ,C2.ENDDATE AS PurchaseEnd
            ,C3.BEGINDATE AS PurchaseDate
            ,A.Listdate
            ,SIAIPO7 AS IssueVolumePlanOnNet
            ,SIAIPO4 AS IssueVolumePlanUnderNet
            ,SIAIPO39 AS DownLimitVolUnderNet
            ,SIAIPO57 AS ProgVolUnderNet
            ,SIAIPO40 AS UpLimitVolUnderNet
            ,Substr(D.EVENTPARTY5,1,4) AS PrimaryUnderwriter0
            ,D.EVENTPARTY5 AS PrimaryUnderwriter
            ,D.EVENTPARTY6 AS Contacts
            ,'见推介公告' AS Contacts0
            ,D.EVENTPARTY7 AS Phones
            ,'见推介公告' AS Phones0
            ,E.CNT AS OtherPrimaryUnderwriters
            ,SIAIPO42 AS UpLimitVolOnNet
            ,SIAIPO42*10000 AS UpLimitVolOnNet0
            FROM (SELECT * FROM SECURITYCODE WHERE STYPE='EQA') A 
            INNER JOIN
            (
              SELECT * 
              FROM IndustryChg A 
              WHERE PublishDate=
              (
                    SELECT MAX(PublishDate) 
                    FROM IndustryChg 
                    WHERE IndustryChg3='证监会行业分类(2012)'
                    AND A.CompanyCode=CompanyCode 
              ) AND IndustryChg3='证监会行业分类(2012)' 
            )F 
                ON A.COMPANYCODE=F.COMPANYCODE 
            LEFT JOIN (SELECT * FROM symbol_comp WHERE SYMBOL_COMP_TYPE='05')A2 
                  ON A.SYMBOL=A2.SYMBOL
            INNER JOIN SIAIPO B
                 ON A.COMPANYCODE=B.COMPANYCODE 
            LEFT JOIN (SELECT * FROM SIIDATE WHERE DATETYPECODE='0103')C
                 ON B.COMPANYCODE=C.COMPANYCODE AND B.SIBASEINFOID=C.SIBASEINFOID 
            LEFT JOIN (SELECT * FROM SIIDATE WHERE DATETYPECODE='0109')C2
                 ON B.COMPANYCODE=C2.COMPANYCODE AND B.SIBASEINFOID=C2.SIBASEINFOID 
            LEFT JOIN (SELECT * FROM SIIDATE WHERE DATETYPECODE='0117')C3
                 ON B.COMPANYCODE=C3.COMPANYCODE AND B.SIBASEINFOID=C3.SIBASEINFOID 
            LEFT JOIN (SELECT * FROM EVENTPARTY WHERE EVENTPARTY1='01' AND EVENTPARTY2 IN ('037'))D
                 ON D.COMPANYCODE=A.COMPANYCODE AND D.EVENTID=C.SIBASEINFOID
            LEFT JOIN (SELECT COMPANYCODE,EVENTID,COUNT(*) AS CNT FROM EVENTPARTY WHERE EVENTPARTY1='01' AND EVENTPARTY2 IN ('017') GROUP BY COMPANYCODE,EVENTID)E----副主承销商 
                 ON E.COMPANYCODE=A.COMPANYCODE AND E.EVENTID=C.SIBASEINFOID
            LEFT JOIN (SELECT * FROM SIBASEINFO WHERE FTYPE='01' AND STYPE='EQA') G
                 ON B.Companycode=G.Companycode AND B.Sibaseinfoid=G.Sibaseinfoid
            LEFT JOIN (SELECT * FROM CSI_PE_CSRC WHERE SType='1') H1
                 ON H1.IndustryCode = F.IndustryChg8 AND H1.TDATE = to_char(C.BEGINDATE,'yyyyMMdd')
            LEFT JOIN (SELECT * FROM CSI_PE_CSRC WHERE SType='1') H2
                 ON H2.IndustryCode = F.IndustryChg8 AND H2.TDATE = to_char(sysdate-1,'yyyyMMdd')
            WHERE 1=1
            " + sqlDateRestrict + @"
            ORDER BY Listdate DESC, C3.BEGINDATE DESC, A.Symbol";

        DataTable dtOutput = client.ExecuteSQL(sql).Tables[0];

        return(dtOutput);
    }
Exemple #21
0
    public DataTable GetAShareStockList(string code)
    {
        CHServiceClient client = new CHServiceClient();

        return(client.GetAShareStockList(code, null, null, "1").Tables[0]);
    }
Exemple #22
0
    public DataTable GetFreeFloatCapital(DateTime endDate, string code)
    {
        CHServiceClient client = new CHServiceClient();

        return(client.GetFreeFloatCapital(endDate, code).Tables[0]);
    }