亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python配置同花順全數(shù)據(jù)接口教程詳解

 更新時間:2022年01月27日 16:49:14   作者:songroom  
這篇文章主要為大家詳細介紹了Python配置同花順全數(shù)據(jù)接口的教程,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

前往:http://quantapi.10jqka.com.cn/?page=home

在這里插入圖片描述

如果是windows,根據(jù)不同用戶,可以選擇不同的下載。

一、iFinDPy 模塊

下載完成后,會出現(xiàn)一個DataInterface_free_Windows_20210812.7z的文件,解壓到任意文件夾中。打開該文件夾進入Bin文件夾后,再打開Tool文件夾,雙擊運行SuperCommand.exe,并使用iFinD賬號免費登錄。

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

選擇python,確定。同時添加路徑。

在這里插入圖片描述

選上。然后重啟電腦,相關(guān)環(huán)境變量設置生效。

現(xiàn)在就可以在python環(huán)境中調(diào)用iFinDPy了。

二、相關(guān)代碼

安裝iFinDPy后,即可。具體可以參考:http://quantapi.10jqka.com.cn/?page=sample。

# -*- coding: utf-8 -*-
from iFinDPy import *
from datetime import datetime
import pandas as pd
import time as _time
import json
from threading import Thread,Lock,Semaphore
import requests
sem = Semaphore(5)  # 此變量用于控制最大并發(fā)數(shù)
dllock = Lock()  #此變量用來控制實時行情推送中落數(shù)據(jù)到本地的鎖
# 登錄函數(shù)
def thslogindemo():
    # 輸入用戶的帳號和密碼
    thsLogin = THS_iFinDLogin("數(shù)據(jù)接口_賬號","數(shù)據(jù)接口_密碼")
    print(thsLogin)
    if thsLogin != 0:
        print('登錄失敗')
    else:
        print('登錄成功')
def datepool_basicdata_demo():
    # 通過數(shù)據(jù)池的板塊成分函數(shù)和基礎數(shù)據(jù)函數(shù),提取滬深300的全部股票在2020-11-16日的日不復權(quán)收盤價
    data_hs300 = THS_DP('block', '2020-11-16;001005290', 'date:Y,thscode:Y,security_name:Y')
    if data_hs300.errorcode != 0:
        print('error:{}'.format(data_hs300.errmsg))
    else:
        seccode_hs300_list = data_hs300.data['THSCODE'].tolist()
        data_result = THS_BD(seccode_hs300_list, 'ths_close_price_stock', '2020-11-16,100')
        if data_result.errorcode != 0:
            print('error:{}'.format(data_result.errmsg))
        else:
            data_df = data_result.data
            print(data_df)
def datapool_realtime_demo():
    # 通過數(shù)據(jù)池的板塊成分函數(shù)和實時行情函數(shù),提取上證50的全部股票的最新價數(shù)據(jù),并將其導出為csv文件
    today_str = datetime.today().strftime('%Y-%m-%d')
    print('today:{}'.format(today_str))
    data_sz50 = THS_DP('block', '{};001005260'.format(today_str), 'date:Y,thscode:Y,security_name:Y')
    if data_sz50.errorcode != 0:
        print('error:{}'.format(data_sz50.errmsg))
    else:
        seccode_sz50_list = data_sz50.data['THSCODE'].tolist()
        data_result = THS_RQ(seccode_sz50_list,'latest')
        if data_result.errorcode != 0:
            print('error:{}'.format(data_result.errmsg))
        else:
            data_df = data_result.data
            print(data_df)
            data_df.to_csv('realtimedata_{}.csv'.format(today_str))
def iwencai_demo():
    # 演示如何通過不消耗流量的自然語言語句調(diào)用常用數(shù)據(jù)
    print('輸出資金流向數(shù)據(jù)')
    data_wencai_zjlx = THS_WC('主力資金流向', 'stock')
    if data_wencai_zjlx.errorcode != 0:
        print('error:{}'.format(data_wencai_zjlx.errmsg))
    else:
        print(data_wencai_zjlx.data)
    print('輸出股性評分數(shù)據(jù)')
    data_wencai_xny = THS_WC('股性評分', 'stock')
    if data_wencai_xny.errorcode != 0:
        print('error:{}'.format(data_wencai_xny.errmsg))
    else:
        print(data_wencai_xny.data)
def dlwork(tick_data):
    # 本函數(shù)為實時行情訂閱新啟線程的任務函數(shù)
    dllock.acquire()
    with open('dlwork.txt', 'a') as f:
        for stock_data in tick_data['tables']:
            if 'time' in stock_data:
                timestr = _time.strftime('%Y-%m-%d %H:%M:%S', _time.localtime(stock_data['time'][0]))
                print(timestr)
                f.write(timestr + str(stock_data) + '\n')
            else:
                pass
    dllock.release()
def work(codestr,lock,indilist):
    sem.acquire()
    stockdata = THS_HF(codestr, ';'.join(indilist),'','2020-08-11 09:15:00', '2020-08-11 15:30:00','format:json')
    if stockdata.errorcode != 0:
        print('error:{}'.format(stockdata.errmsg))
        sem.release()
    else:
        print(stockdata.data)
        lock.acquire()
        with open('test1.txt', 'a') as f:
            f.write(str(stockdata.data) + '\n')
        lock.release()
        sem.release()
def multiThread_demo():
    # 本函數(shù)為通過高頻序列函數(shù),演示如何使用多線程加速數(shù)據(jù)提取的示例,本例中通過將所有A股分100組,最大線程數(shù)量sem進行提取
    # 用戶可以根據(jù)自身場景進行修改
    today_str = datetime.today().strftime('%Y-%m-%d')
    print('today:{}'.format(today_str))
    data_alla = THS_DP('block', '{};001005010'.format(today_str), 'date:Y,thscode:Y,security_name:Y')
    if data_alla.errorcode != 0:
        print('error:{}'.format(data_alla.errmsg))
    else:
        stock_list = data_alla.data['THSCODE'].tolist()
    indi_list = ['close', 'high', 'low', 'volume']
    lock = Lock()
    btime = datetime.now()
    l = []
    for eachlist in [stock_list[i:i + int(len(stock_list) / 10)] for i in
                     range(0, len(stock_list), int(len(stock_list) / 10))]:
        nowstr = ','.join(eachlist)
        p = Thread(target=work, args=(nowstr, lock, indi_list))
        l.append(p)
    for p in l:
        p.start()
    for p in l:
        p.join()
    etime = datetime.now()
    print(etime-btime)
pd.options.display.width = 320
pd.options.display.max_columns = None

def reportDownload():
    df = THS_ReportQuery('300033.SZ','beginrDate:2021-08-01;endrDate:2021-08-31;reportType:901','reportDate:Y,thscode:Y,secName:Y,ctime:Y,reportTitle:Y,pdfURL:Y,seq:Y').data
    print(df)
    for i in range(len(df)):
        pdfName = df.iloc[i,4]+str(df.iloc[i,6])+'.pdf'
        pdfURL = df.iloc[i,5]
        r = requests.get(pdfURL)
        with open(pdfName,'wb+') as f:
            f.write(r.content)

def main():
    # 本腳本為數(shù)據(jù)接口通用場景的實例,可以通過取消注釋下列示例函數(shù)來觀察效果
    # 登錄函數(shù)
    thslogindemo()
    # 通過數(shù)據(jù)池的板塊成分函數(shù)和基礎數(shù)據(jù)函數(shù),提取滬深300的全部股票在2020-11-16日的日不復權(quán)收盤價
    # datepool_basicdata_demo()
    #通過數(shù)據(jù)池的板塊成分函數(shù)和實時行情函數(shù),提取上證50的全部股票的最新價數(shù)據(jù),并將其導出為csv文件
    # datapool_realtime_demo()
    # 演示如何通過不消耗流量的自然語言語句調(diào)用常用數(shù)據(jù)
    # iwencai_demo()
    # 本函數(shù)為通過高頻序列函數(shù),演示如何使用多線程加速數(shù)據(jù)提取的示例,本例中通過將所有A股分100組,最大線程數(shù)量sem進行提取
    # multiThread_demo()
    # 本函數(shù)演示如何使用公告函數(shù)提取滿足條件的公告,并下載其pdf
    # reportDownload()
if __name__ == '__main__':
    main()

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!  

相關(guān)文章

  • 如何通過python實現(xiàn)IOU計算代碼實例

    如何通過python實現(xiàn)IOU計算代碼實例

    這篇文章主要介紹了如何通過python實現(xiàn)IOU計算代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • Python中dumps與dump及l(fā)oads與load的區(qū)別

    Python中dumps與dump及l(fā)oads與load的區(qū)別

    這篇文章主要介紹了Python中dumps與dump、loads與load的區(qū)別,json模塊提供了一種很簡單的方式來編碼和解碼JSON數(shù)據(jù)。其中兩個主要的函數(shù)是json.dumps()和json.loads(),需要的朋友可以參考下
    2022-04-04
  • Python制作簡易版2048小游戲

    Python制作簡易版2048小游戲

    2048作為經(jīng)典的手機端游戲一直深受大家的喜愛,本文將利用Python中的Pygame模塊制作簡單版的2048游戲,感興趣的小伙伴可以了解一下
    2022-07-07
  • python爬取各省降水量及可視化詳解

    python爬取各省降水量及可視化詳解

    本文是學習python,故選取了python最常用的爬蟲作為實操訓練同時,還添加了可視化和GUI入門的內(nèi)容使爬取的內(nèi)容應用更豐富,需要的朋友可以參考下
    2021-04-04
  • python求眾數(shù)問題實例

    python求眾數(shù)問題實例

    這篇文章主要介紹了python求眾數(shù)問題實例,包括文件的讀寫、字典的運用及數(shù)值的計算等技巧,需要的朋友可以參考下
    2014-09-09
  • 對pytorch的函數(shù)中的group參數(shù)的作用介紹

    對pytorch的函數(shù)中的group參數(shù)的作用介紹

    今天小編就為大家分享一篇對pytorch的函數(shù)中的group參數(shù)的作用介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python django框架開發(fā)發(fā)布會簽到系統(tǒng)(web開發(fā))

    Python django框架開發(fā)發(fā)布會簽到系統(tǒng)(web開發(fā))

    這篇文章主要介紹了Python django框架開發(fā)發(fā)布會簽到系統(tǒng)(web開發(fā)),本文通過實例代碼效果展示截圖的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • Python實現(xiàn)掃碼工具的示例代碼

    Python實現(xiàn)掃碼工具的示例代碼

    這篇文章主要介紹了Python實現(xiàn)掃碼工具的示例代碼,代碼簡單易懂對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • Python中最大最小賦值小技巧(分享)

    Python中最大最小賦值小技巧(分享)

    下面小編就為大家分享一篇Python中最大最小賦值小技巧,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Python實用技巧之輕松處理大型文件

    Python實用技巧之輕松處理大型文件

    Python在文件處理方面提供了非常強大的支持,然而,當處理大型文件時,標準的文件處理技術(shù)會導致高內(nèi)存使用,所以下面我們就來看看如何在Python中有效地處理大型文件吧
    2024-03-03

最新評論