日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python爬取連續一字板股票及當時日期數據【原創分享】

系統 1762 0

  本篇為個人測試記錄,記錄爬取連續一字板的股票及當時日期。

?

            
              
                import
              
              
                 tushare as ts

              
              
                import
              
              
                 pandas as pd

              
              
                import
              
              
                 time



              
              
                #
              
              
                 篩選一字板的策略
              
              
                def
              
              
                 gp_rules(code):
    
              
              
                #
              
              
                 獲取某只股票的歷史數據
              
              
    data = ts.get_hist_data(code, start=
              
                '
              
              
                2018-01-01
              
              
                '
              
              , end=
              
                '
              
              
                2019-07-26
              
              
                '
              
              
                )
    
              
              
                #
              
              
                 排除該時間段無數據的股票
              
              
                if
              
               data 
              
                is
              
              
                 None:
        
              
              
                return
              
              
                #
              
              
                 篩選表頭【開盤價,收盤價, 漲幅】
              
              
    data_2 = data.iloc[:, [0, 2, 6
              
                ]]
    
              
              
                #
              
              
                 篩選出漲幅大于9%且開盤價等于收盤價的股票,即一字漲停的股票(有待優化~)
              
              
    data_3 = data_2[(data_2[
              
                '
              
              
                p_change
              
              
                '
              
              ] > 9) & (data_2[
              
                '
              
              
                open
              
              
                '
              
              ] == data_2[
              
                '
              
              
                close
              
              
                '
              
              
                ])]
    
              
              
                #
              
              
                 去除不存在一字板的股票(即空數據)
              
              
                if
              
               data_3.index 
              
                is
              
              
                 None:
        
              
              
                return
              
              
                
    line 
              
              =
              
                 len(data_3)
    f, s 
              
              = 1
              
                , 0
    
              
              
                #
              
              
                 遍歷檢查是否連續的一字板
              
              
                for
              
               n 
              
                in
              
              
                 range(0, line):

        
              
              
                #
              
              
                 檢查是否連續的一字板
              
              
                if
              
               int(data_3[
              
                '
              
              
                open
              
              
                '
              
              ][n] * (data_3[
              
                '
              
              
                p_change
              
              
                '
              
              ][n]/100 + 1)) == int(data_3[
              
                '
              
              
                open
              
              
                '
              
              ][n-1
              
                ]):
            f 
              
              = f + 1
            
              
                #
              
              
                 若4連或4連以上一字板則打印代碼及當時日期
              
              
                if
              
               f >= 5 
              
                and
              
               s ==
              
                 0:
                
              
              
                print
              
              (code, data_3.index[n-4
              
                ])
                s 
              
              = 1
        
              
                else
              
              
                :
            f 
              
              = 1



              
                #
              
              
                 篩選股票代碼
              
              
                def
              
              
                 get_code():
   # 自己獲取
    TOKEN 
              
              = 
              
                'xxxx
              
              
                '
              
              
                
    pro 
              
              = ts.pro_api(token=
              
                TOKEN)
    
              
              
                #
              
              
                 篩選代碼,上市日期
              
              
    get_codedata = pro.stock_basic(exchange=
              
                ''
              
              , list_status=
              
                '
              
              
                L
              
              
                '
              
              , fields=
              
                '
              
              
                symbol, list_date
              
              
                '
              
              
                )
    
              
              
                #
              
              
                 將list_date改為日期格式并轉為索引
              
              
    get_codedata[
              
                '
              
              
                list_date
              
              
                '
              
              ] = pd.to_datetime(get_codedata[
              
                '
              
              
                list_date
              
              
                '
              
              
                ])
    get_codedata 
              
              = get_codedata.set_index(
              
                '
              
              
                list_date
              
              
                '
              
              
                )
    
              
              
                #
              
              
                 篩選2018-01-01前的數據,取code,轉為list
              
              
    symbol_list = get_codedata[:
              
                '
              
              
                2018-01-01
              
              
                '
              
              ][
              
                '
              
              
                symbol
              
              
                '
              
              
                ].tolist()
    
              
              
                return
              
              
                 symbol_list



              
              
                #
              
              
                 測試運行時間
              
              
start =
              
                 time.clock()


code_list 
              
              =
              
                 get_code()

              
              
                print
              
              (
              
                "
              
              
                正在爬取符合策略的股票,請耐心等待......
              
              
                "
              
              
                )


              
              
                for
              
               code 
              
                in
              
              
                 list(code_list):
    time.sleep(
              
              1.4
              
                )
    gp_rules(code)



              
              
                print
              
              (
              
                "
              
              
                爬取篩選完成!
              
              
                "
              
              
                )
end 
              
              =
              
                 time.clock()


              
              
                print
              
              (
              
                '
              
              
                運行時間:%s Seconds
              
              
                '
              
               % (end-start))
              

python爬取連續一字板股票及當時日期數據【原創分享】_第1張圖片 python爬取連續一字板股票及當時日期數據【原創分享】_第2張圖片

?

?

如有錯誤,請及時指正,謝謝!

?


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 泗洪县| 墨玉县| 惠来县| 子长县| 陇西县| 正镶白旗| 翁源县| 镇原县| 双流县| 安达市| 云霄县| 白城市| 澜沧| 石门县| 连州市| 浦江县| 中阳县| 炉霍县| 自治县| 札达县| 扎兰屯市| 敖汉旗| 葫芦岛市| 韶山市| 阳曲县| 河池市| 揭东县| 化州市| 武功县| 乌海市| 综艺| 绥棱县| 宝清县| 武义县| 张家口市| 从江县| 三穗县| 凤台县| 北宁市| 慈溪市| 曲靖市|