# -*- encoding:utf-8 -*-
import pandas as pd
from tqsdk import TqApi, TqSim, TqAuth, TqTimeoutError
seconds = 60
lengths = 600
contracts = [
'SHFE.ru2201',
'DCE.p2201',
'DCE.i2201',
'DCE.i2205',
'DCE.pg2201',
'CZCE.CF201',
'CZCE.MA201',
'CZCE.ZC201',
'SSE.000300'
]
def get_kline_serial(api, contract):
print("get_kline_serial: {}".format(contract))
options = api.query_options(contract, option_class="PUT", expired=False)
for i in range(0, len(options)):
try:
print(options[i])
kline = api.get_kline_serial("{}".format(options[i]), seconds, data_length=lengths)
except TqTimeoutError as e:
print("获取合约{}超时".format(options[i]))
options = api.query_options(contract, option_class="CALL", expired=False)
for i in range(0, len(options)):
try:
print(options[i])
kline = api.get_kline_serial("{}".format(options[i]), seconds, data_length=lengths)
except TqTimeoutError as e:
print("获取合约{}超时".format(options[i]))
return 0
if __name__ == "__main__":
api = TqApi(TqSim(), auth=TqAuth("xxx", "yyy"))
for contract in contracts:
get_kline_serial(api, contract)
rlliang 选择最佳答案 2021年11月16日
你们的sdk有待提高 多重视用户反馈 cpu耗那么高无法理解