コード例 #1
0
ファイル: engine.py プロジェクト: Anjiefan/quant
    def download_tick_data(
        self,
        symbol: str,
        exchange: Exchange,
        start: datetime
    ) -> int:
        """
        Query tick data from RQData.
        """
        req = HistoryRequest(
            symbol=symbol,
            exchange=exchange,
            start=start,
            end=datetime.now()
        )

        if not rqdata_client.inited:
            rqdata_client.init()

        data = rqdata_client.query_history(req)

        if data:
            database_manager.save_tick_data(data)
            return(len(data))

        return 0
コード例 #2
0
ファイル: engine.py プロジェクト: TradingHacker/vnpy_charting
    def download_bar_data(self, symbol: str, exchange: Exchange, interval: str,
                          start: datetime) -> int:
        """
        Query bar data from RQData.
        """
        req = HistoryRequest(symbol=symbol,
                             exchange=exchange,
                             interval=Interval(interval),
                             start=start,
                             end=datetime.now())

        vt_symbol = f"{symbol}.{exchange.value}"
        contract = self.main_engine.get_contract(vt_symbol)

        # If history data provided in gateway, then query
        if contract and contract.history_data:
            data = self.main_engine.query_history(req, contract.gateway_name)
        # Otherwise use RQData to query data
        else:
            if not rqdata_client.inited:
                rqdata_client.init()

            data = rqdata_client.query_history(req)

        if data:
            database_manager.save_bar_data(data)
            return (len(data))

        return 0
コード例 #3
0
    def rq_download(
        self,
        vt_symbol: str,
        interval: str,
        start: datetime,
        end: datetime,
    ):
        rqdata_client.init()
        symbol, exchange = extract_vt_symbol(vt_symbol)

        req = HistoryRequest(symbol=symbol,
                             exchange=exchange,
                             interval=Interval(interval),
                             start=start,
                             end=end)

        # print(req)

        data = rqdata_client.query_history(req)

        if data:
            database_manager.save_bar_data(data)
            print(f"{vt_symbol}-{interval} 历史数据下载完成")
        else:
            print(f"数据下载失败,无法得到 {vt_symbol} 的数据")
コード例 #4
0
ファイル: engine.py プロジェクト: zhouwei4780/vnpy
 def init(self):
     """
     Start script engine.
     """
     result = rqdata_client.init()
     if result:
         self.write_log("RQData数据接口初始化成功")
コード例 #5
0
ファイル: engine.py プロジェクト: ajmal017/earnmi
 def init_rqdata(self):
     """
     Init RQData client.
     """
     result = rqdata_client.init()
     if result:
         self.write_log("RQData数据接口初始化成功")
コード例 #6
0
 def init_rqdata(self):
     """
     Init RQData client.
     """
     result = rqdata_client.init()
     if result:
         self.write_log("RQData successful initialization data interface")
コード例 #7
0
ファイル: engine.py プロジェクト: battyone/vnpy_eng
 def init(self):
     """
     Start script engine.
     """
     result = rqdata_client.init()
     if result:
         self.write_log("RQData successful initialization data interface ")
コード例 #8
0
 def init_rqdata(self):
     """
     Init RQData client.
     """
     username = SETTINGS["rqdata.username"]
     if username:
         result = rqdata_client.init()
         if result:
             self.write_log("RQData数据接口初始化成功")
コード例 #9
0
ファイル: base.py プロジェクト: VizXu/vnpy
def query_bar_from_rq(
    symbol: str,
    exchange: Exchange,
    interval: Interval,
    start: datetime,
    end: datetime
):
    """
    Query bar data from RQData.
    """
    if not rqdata_client.inited:
        rqdata_client.init()

    req = HistoryRequest(
        symbol=symbol,
        exchange=exchange,
        interval=interval,
        start=start,
        end=end
    )
    data = rqdata_client.query_history(req)
    return data
コード例 #10
0
    def __init__(self, main_engine: MainEngine, event_engine: EventEngine):
        """"""
        super().__init__(main_engine, event_engine, APP_NAME)

        rqdata_client.init()
コード例 #11
0
from vnpy.trader.setting import SETTINGS

# 设置配置参数
interval = Interval.MINUTE
symbol = "IF2005"
exchange = Exchange.CFFEX

# 查询数据库中的最新数据
bar = database_manager.get_newest_bar_data(symbol, exchange, interval)
if bar:
    start = bar.datetime
else:
    start = datetime(2017, 1, 1)

# 初始化米筐
n = rqdata_client.init(SETTINGS["rqdata.username"],
                       SETTINGS["rqdata.password"])
if n:
    print("RQData登录成功")
else:
    print("RQData登录失败")

# 从米筐下载数据
req = HistoryRequest(symbol,
                     exchange,
                     start,
                     datetime.now(),
                     interval=interval)
data = rqdata_client.query_history(req)

# 写入数据库
if data:
コード例 #12
0
from vnpy.trader.constant import Interval, Exchange
from vnpy.trader.database import BarOverview, DB_TZ
from vnpy.trader.database import database_manager
from vnpy.trader.engine import BaseEngine, MainEngine, EventEngine
from vnpy.trader.object import BarData, HistoryRequest
from vnpy.trader.rqdata import rqdata_client
from vnpy.trader.iexdata import iexdata_client
from vnpy.trader.tiingodata import tiingo_client
from vnpy.trader.setting import SETTINGS
import sys
from vnpy.trader.rqdata import rqdata_client

username = SETTINGS['rqdata.username']
password = SETTINGS['rqdata.password']
rqdata_client.init(username, password)

req = HistoryRequest(symbol='TSLA',
                     exchange=Exchange.NASDAQ,
                     start=DB_TZ.localize(
                         datetime.strptime('2020-01-01', '%Y-%m-%d')),
                     interval=Interval.DAILY,
                     end=datetime.now(DB_TZ))
data = rqdata_client.query_history(req)
print(data)

#
# start = datetime(2016, 1, 1)
# end = datetime(2019, 7, 30)
# # single_stock_history = client.getHistoricalPrices(['AAPL'])
# single_company_history = client.getCompanyInfo(['AAPL'])
コード例 #13
0
ファイル: rqdata_to_sqllite.py プロジェクト: dylan1521/vnpy
import datetime as dt
from vnpy.trader.rqdata import rqdata_client
from vnpy.trader.database import database_manager
from vnpy.trader.constant import Exchange, Interval
from vnpy.trader.object import HistoryRequest

rqdata_client.init()
# symbols = {
#     "SHFE": ["CU", "AL", "ZN", "PB", "NI", "SN", "AU", "AG", "RB", "WR", "HC", "SS", "BU", "RU", "NR", "SP", "SC", "LU", "FU"],
#     "DCE": ["C", "CS", "A", "B", "M", "Y", "P", "FB","BB", "JD", "RR", "L", "V", "PP", "J", "JM", "I", "EG", "EB", "PG"],
#     "CZCE": ["SR", "CF", "CY", "PM","WH", "RI", "LR", "AP","JR","OI", "RS", "RM", "TA", "MA", "FG", "SF", "ZC", "SM", "UR", "SA", "CL"],
#     "CFFEX": ["IH","IC","IF", "TF","T", "TS"]
# }

symbols = {"CFFEX": ["IH", "IC", "IF"]}

start_date = dt.datetime(2020, 1, 1)
end_date = dt.datetime(2020, 9, 10)

symbol_type = "88"


def load_data(req):
    data = rqdata_client.query_history(req)
    database_manager.save_bar_data(data)
    print(f"{req.symbol}历史数据下载完成")


for exchange, symbols_list in symbols.items():
    for s in symbols_list:
        req = HistoryRequest(