<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 如何使用優礦之“新聞熱點”? > 來源:https://uqer.io/community/share/55fa68a0f9f06cb1199d44c6 本期講解如何使用優礦的新聞熱點相關API,以及一個“然并卵”的示例策略。 包括: + 股票新聞熱點獲取:`NewsHeatIndexGet` + 股票新聞情感獲取:`NewsSentimentIndexGet` + 股票相關新聞獲取:`NewsByTickersGet` 本篇中,我們只研究滬深300成分股。 ```py from quartz.api import set_universe universe = set_universe("HS300") ``` ## 1. 獲取新聞熱點 使用:`NewsHeatIndexGet` ``` Type: function Definition: DataAPI.NewsHeatIndexGet(exchangeCD='', ticker='', secShortName='', beginDate='', endDate='', secID='', field='', pandas='1') Docstring: 包含證券相關的新聞熱度指數數據,輸入一個或多個證券交易代碼、起止日期,獲取該證券一段時間內的新聞熱度指數(即證券當天關聯新聞數量占當天新聞總量的百分比(%))。每天更新。(注:1、2014/1/1起新聞來源眾多、指數統計有效,2013年及之前的網站來源不全、數據波動大,數據自2004/10/28始;2、新聞量的統計口徑為經算法處理后證券關聯到的所有常規新聞;3、數據按日更新。) ``` 關鍵的參數: + `secID:` 證券代碼列表 + `beginDate`:新聞搜索開始日期 + `endDate`:新聞搜索結束日期 ```py data = DataAPI.NewsHeatIndexGet(secID=universe, beginDate="20150916", endDate="20150916") data.sort('heatIndex', ascending=False).head() ``` | | secID | exchangeCD | exchangeName | ticker | secShortName | newsPublishDate | heatIndex | insertTime | updateTime | | --- | --- | | 125 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 2015-09-16 | 4.726101 | 2015-09-16 01:10:03 | 2015-09-17 13:53:26 | | 205 | 600837.XSHG | XSHG | 上海證券交易所 | 600837 | 海通證券 | 2015-09-16 | 3.508772 | 2015-09-15 22:05:04 | 2015-09-17 13:53:26 | | 251 | 601688.XSHG | XSHG | 上海證券交易所 | 601688 | 華泰證券 | 2015-09-16 | 2.685285 | 2015-09-16 01:36:04 | 2015-09-17 13:53:26 | | 241 | 601398.XSHG | XSHG | 上海證券交易所 | 601398 | 工商銀行 | 2015-09-16 | 2.542069 | 2015-09-15 22:30:08 | 2015-09-17 13:53:26 | | 269 | 601939.XSHG | XSHG | 上海證券交易所 | 601939 | 建設銀行 | 2015-09-16 | 2.398854 | 2015-09-15 22:30:08 | 2015-09-17 13:53:26 | 獲取的數據列表中,每一行就是對應的證券在某一天的新聞熱度(heatIndex)。可以看到9月16日,中信證券(600030)榮登熱度排行榜榜首! ## 2. 獲取新聞情感 光知道新聞熱度的話不夠,我們還需要這道整體的新聞情感(正面or負面?)。 使用:`NewsSentimentIndexGet` ``` Type: function Definition: DataAPI.NewsSentimentIndexGet(exchangeCD='', ticker='', secShortName='', beginDate='', endDate='', secID='', field='', pandas='1') Docstring: 包含證券相關的新聞情感指數數據,輸入一個或多個證券交易代碼、起止日期,獲取該證券一段時間內的新聞情感指數(即當天證券關聯新聞的情感均值)。(注:1、2014/1/1起新聞來源眾多、指數統計有效,2013年及之前的網站來源不全、數據波動大,數據自2004/10/28始;2、新聞量的統計口徑為經算法處理后證券關聯到的所有常規新聞;3、數據按日更新。) ``` 關鍵的參數: + `secID`: 證券代碼列表 + `beginDate`:新聞搜索開始日期 + `endDate`:新聞搜索結束日期 ```py data = DataAPI.NewsSentimentIndexGet(secID=universe, beginDate="20150916", endDate="20150916") data.sort('sentimentIndex', ascending=True).head() ``` | | secID | exchangeCD | exchangeName | ticker | secShortName | newsPublishDate | sentimentIndex | insertTime | updateTime | | --- | --- | | 49 | 000831.XSHE | XSHE | 深圳證券交易所 | 000831 | 五礦稀土 | 2015-09-16 | -0.294702 | 2015-09-16 09:20:07 | 2015-09-17 14:03:25 | | 125 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 2015-09-16 | -0.171486 | 2015-09-16 01:10:03 | 2015-09-17 14:03:25 | | 171 | 600489.XSHG | XSHG | 上海證券交易所 | 600489 | 中金黃金 | 2015-09-16 | -0.162101 | 2015-09-16 02:05:34 | 2015-09-17 14:03:25 | | 231 | 601225.XSHG | XSHG | 上海證券交易所 | 601225 | 陜西煤業 | 2015-09-16 | -0.162101 | 2015-09-16 02:05:34 | 2015-09-17 14:03:25 | | 95 | 002653.XSHE | XSHE | 深圳證券交易所 | 002653 | 海思科 | 2015-09-16 | -0.154720 | 2015-09-15 20:35:05 | 2015-09-17 14:03:25 | 獲取的數據列表中,每一行就是對應的證券在某一天的新聞情感(`heatIndex`),負數代表負面情感,正數代表正面情感。可以看到9月16日,中信證券(600030)在新聞情感指數榜上排名倒數第二! ## 3. 股票詳細新聞獲取 用戶如果想更深度的剖析個別新聞對某只證券的影響,可以通過API獲取詳細的新聞分析列表: 使用:`NewsByTickersGet` ``` Type: function Definition: DataAPI.NewsByTickersGet(ticker='', secShortName='', secID='', exchangeCD='', beginDate='', endDate='', field='', pandas='1') Docstring: 包含證券相關的新聞數據,同時可獲取針對不同證券的新聞情感數據。輸入證券代碼或簡稱、查詢的新聞發布起止時間,同時可輸入證券交易所代碼,獲取相關新聞數據,如:新聞ID、新聞標題、發布來源、發布時間、入庫時間等。(注:1、自2014/1/1起新聞來源眾多、新聞量日均4萬左右,2013年及之前的網站來源少、新聞數據量少;2、數據實時更新。) ``` 關鍵的參數: + `secID`: 證券代碼列表 + `beginDate`:新聞搜索開始日期 + `endDate`:新聞搜索結束日期 我們來試著獲取2015年9月16日當天中信證券的相關新聞: ```py data = DataAPI.NewsByTickersGet(secID='600030.XSHG', beginDate='20150916', endDate='20150916') data.sort('relatedScore', ascending=False).head(10) ``` | | secID | exchangeCD | exchangeName | ticker | secShortName | newsID | newsTitle | relatedScore | sentiment | sentimentScore | newsPublishSite | newsPublishTime | newsInsertTime | | --- | --- | | 71 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14554253 | “股民好伴侶”南方理財金H詳細操作指南 | 0.999999 | -1 | -0.028868 | 中國經濟網 | 2015-09-16 09:27:00 | 2015-09-16 09:41:30 | | 106 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14564116 | 嘉實超短債債券:2015年第八次收益分配公告 | 0.999993 | -1 | -0.196649 | 證券之星 | 2015-09-16 13:16:23 | 2015-09-16 13:37:17 | | 118 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14575307 | 銀華交易型貨幣(ETF):關于增加東興證券、中航證券為基金申購贖回代理機構的公告 | 0.999950 | -1 | -0.402002 | 證券之星 | 2015-09-16 16:14:01 | 2015-09-16 16:57:18 | | 31 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14539393 | 中信證券總經理程博明被查 已有11名骨干被帶走 | 0.999950 | -1 | -0.097207 | 新浪財經 | 2015-09-16 02:42:00 | 2015-09-16 03:19:25 | | 19 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14537527 | 中信三家營業部“重出江湖” 7個交易日買入A股119.49億元占比近17% | 0.999181 | -1 | -0.133462 | 新浪財經 | 2015-09-16 01:36:00 | 2015-09-16 01:40:36 | | 33 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14539225 | 中信證券危機應對:火上澆油 | 0.998778 | -1 | -0.253825 | 和訊網 | 2015-09-16 03:14:10 | 2015-09-16 03:16:14 | | 40 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14551566 | 中信證券事件再升級:總經理被查 遇前所未有危機 | 0.998508 | -1 | -0.225816 | 網易財經 | 2015-09-16 05:01:25 | 2015-09-16 08:58:45 | | 61 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14548828 | 中信證券事件再升級:總經理程博明被查 | 0.998508 | -1 | -0.221037 | 中國證券網 | 2015-09-16 08:08:43 | 2015-09-16 08:12:59 | | 129 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14584031 | 復盤中信證券:它曾是證券行業的新一代龍頭 | 0.997775 | -1 | -0.008536 | 金融界 | 2015-09-16 21:44:48 | 2015-09-16 21:50:33 | | 53 | 600030.XSHG | XSHG | 上海證券交易所 | 600030 | 中信證券 | 14549075 | “國家隊主攻手”陷救市漩渦 中信證券總經理程博明被調查 | 0.997283 | -1 | -0.159776 | 新華網 | 2015-09-16 07:26:00 | 2015-09-16 08:16:56 | ## 4. 使用新聞數據編寫簡單策略 策略的指導想法是買入市場關為熱點,并且新聞情感為正面的股票。 策略參數: + 開始日期:2010年1月1日 + 結束日期:2015年9月1日 + 選擇域:滬深成分股(2010年1月1日采樣) + 調倉周期:10個交易日 + 買入方法:等權重買入 + 規則:選取熱度最高的100支股票,從中再選取情感最高并且為正的20支。 ```py from CAL.PyCAL import * start = '2010-01-01' end = '2015-09-01' benchmark = 'HS300' universe = set_universe('HS300', start) capital_base = 1000000 freq = 'd' refresh_rate = 10 def initialize(account): pass def handle_data(account): cal = Calendar('China.SSE') endDate = cal.advanceDate(account.current_date, '-1b', BizDayConvention.Preceding) beginDate = cal.advanceDate(endDate, '-10b', BizDayConvention.Preceding) # 獲取當前參考期內股票熱度 data = DataAPI.NewsHeatIndexGet(secID=account.universe, beginDate=beginDate.strftime("%Y%m%d"), endDate=endDate.strftime("%Y%m%d")) # 只選取熱度排名前100的股票 sortedHeatIndex = data.groupby('secID')[['secID', 'heatIndex']].mean() choosenStocks = list(sortedHeatIndex.sort('heatIndex', ascending=False).index[:100].values) # 獲取選取的50支股票的情感指數 data = DataAPI.NewsSentimentIndexGet(secID=choosenStocks, beginDate=beginDate.strftime("%Y%m%d"), endDate=endDate.strftime("%Y%m%d")) # 只選取正面情感最高的20支股票 data = data.groupby('secID')[['secID', 'sentimentIndex']].mean() sortedSentimentIndex = data.sort('sentimentIndex', ascending=False) sortedSentimentIndex = sortedSentimentIndex[sortedSentimentIndex['sentimentIndex'] > 0] choosenStocks = list(sortedSentimentIndex.index[:20].values) estimtedPortfolioValue = account.referencePortfolioValue # 賣出當前持倉 for s in account.valid_secpos: order_to(s, 0) # 等比例買入選擇股票 for s in choosenStocks: order(s, int(estimtedPortfolioValue / len(choosenStocks) / account.referencePrice[s] / 100.)*100) ``` ![](https://box.kancloud.cn/2016-07-30_579cbdb03dd06.jpg) 看來這么簡單的想法確實是“然并卵”!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看