Skip to content

Commit 56f0e67

Browse files
committed
修改时间转换函数及说明
1 parent b5b293e commit 56f0e67

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

tqsdk/api.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -335,15 +335,15 @@ def get_kline_serial(self, symbol, duration_seconds, data_length=200, chart_id=N
335335
336336
Example2::
337337
338-
# 将K线的纳秒时间转换为 datetime.datetime 类型
339-
from datetime import datetime
338+
# 使用tqsdk自带的时间转换函数, 将最后一根K线的纳秒时间转换为 datetime.datetime 类型
339+
from tqsdk import tafunc
340340
...
341341
342342
klines = api.get_kline_serial("DCE.jd2001", 10)
343-
kline_time = datetime.fromtimestamp(klines.iloc[-1]["datetime"] / 1e9) # datetime.datetime 类型值
343+
kline_time = tafunc.time_to_datetime(klines.iloc[-1]["datetime"]) # datetime.datetime 类型值
344344
print(type(kline_time), kline_time)
345345
print(kline_time.year, kline_time.month, kline_time.day, kline_time.hour, kline_time.minute, kline_time.second)
346-
346+
...
347347
"""
348348
if symbol not in self._data.get("quotes", {}):
349349
raise Exception("代码 %s 不存在, 请检查合约代码是否填写正确" % (symbol))

tqsdk/tafunc.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -645,7 +645,7 @@ def _to_ns_timestamp(input_time):
645645
int : int 类型纳秒级时间戳
646646
"""
647647

648-
if type(input_time) in {int, float}: # 时间戳
648+
if type(input_time) in {int, float, np.float64, np.float32, np.int64, np.int32}: # 时间戳
649649
if input_time > 2 ** 32: # 纳秒( 将 > 2*32数值归为纳秒级)
650650
return int(input_time)
651651
else: # 秒
@@ -659,15 +659,15 @@ def _to_ns_timestamp(input_time):
659659
d = int(input_time.timestamp() * 1e9)
660660
return d
661661
else:
662-
raise TypeError("暂不支持此值的转换,返回原时间数据")
662+
raise TypeError("暂不支持此类型的转换")
663663

664664

665665
def time_to_ns_timestamp(input_time):
666666
"""
667667
将传入的时间转换为int类型的纳秒级时间戳
668668
669669
Args:
670-
input_time (str/ int/float/ datetime.datetime): 需要转换的时间:
670+
input_time (str/ int/ float/ datetime.datetime): 需要转换的时间:
671671
* str: str 类型的时间,如Quote行情时间的datetime字段 (eg. 2019-10-14 14:26:01.000000)
672672
673673
* int: int 类型的纳秒级或秒级时间戳
@@ -693,7 +693,7 @@ def time_to_s_timestamp(input_time):
693693
将传入的时间转换为int类型的秒级时间戳
694694
695695
Args:
696-
input_time (str/ int/float/ datetime.datetime): 需要转换的时间:
696+
input_time (str/ int/ float/ datetime.datetime): 需要转换的时间:
697697
* str: str 类型的时间,如Quote行情时间的datetime字段 (eg. 2019-10-14 14:26:01.000000)
698698
699699
* int: int 类型的纳秒级或秒级时间戳

0 commit comments

Comments
 (0)