| | |
| | | return int(ts[0]) * 3600 + int(ts[1]) * 60 + int(ts[2]) |
| | | |
| | | |
| | | def get_time_as_millionsecond(time_str): |
| | | s_str,ms_str = time_str.split(".") |
| | | ts = s_str.split(":") |
| | | return int(ts[0]) * 3600 + int(ts[1]) * 60 + int(ts[2])*1000 + int(ms_str) |
| | | |
| | | |
| | | # 将秒数格式化为时间 |
| | | def time_seconds_format(seconds): |
| | | h = seconds // 3600 |
| | | m = seconds % 3600 // 60 |
| | | s = seconds % 60 |
| | | return "{0:0>2}:{1:0>2}:{2:0>2}".format(h, m, s) |
| | | |
| | | |
| | | def time_millionseconds_format(millionseconds): |
| | | ms = millionseconds % 1000 |
| | | seconds = millionseconds // 1000 |
| | | h = seconds // 3600 |
| | | m = seconds % 3600 // 60 |
| | | s = seconds % 60 |
| | | return "{0:0>2}:{1:0>2}:{2:0>2}.{3:0>3}".format(h, m, s, ms) |
| | | |
| | | |
| | | # 交易時間的差值 |
| | |
| | | time_2 = time_2 - 90 * 60 |
| | | elif time_2 < split_time < time_1: |
| | | time_2 = time_2 + 90 * 60 |
| | | |
| | | return time_1 - time_2 |
| | | |
| | | def trade_time_sub_with_ms(time_str_1, time_str_2): |
| | | split_time = get_time_as_second("11:30:00")*1000 |
| | | time_1 = get_time_as_millionsecond(time_str_1) |
| | | time_2 = get_time_as_millionsecond(time_str_2) |
| | | if time_1 < split_time < time_2: |
| | | time_2 = time_2 - 90 * 60*1000 |
| | | elif time_2 < split_time < time_1: |
| | | time_2 = time_2 + 90 * 60*1000 |
| | | |
| | | return time_1 - time_2 |
| | | |
| | |
| | | if s >= 11 * 3600 + 30 * 60 > s_: |
| | | s += 90 * 60 |
| | | return time_seconds_format(s) |
| | | |
| | | |
| | | def trade_time_add_millionsecond(time_str, millionsecond): |
| | | s_str, ms_str = time_str.split(".") |
| | | ts = s_str.split(":") |
| | | s_ = int(ts[0]) * 3600 + int(ts[1]) * 60 + int(ts[2]) |
| | | ms_ = s_ * 1000 |
| | | ms_ += int(ms_str) |
| | | ms = ms_ + millionsecond |
| | | # 是否在11:30:00 |
| | | if ms >= 11 * 3600 * 1000 + 30 * 60 * 1000 > ms_: |
| | | ms += 90 * 60 * 1000 |
| | | return time_millionseconds_format(ms) |
| | | |
| | | |
| | | def compute_buy1_real_time(time_): |
| | |
| | | if count < 100: |
| | | count = 100 |
| | | return count |
| | | |
| | | |
| | | if __name__ == "__main__": |
| | | print(trade_time_add_millionsecond("10:36:00.123", 1000)) |
| | | print(trade_time_add_millionsecond("11:29:59.123", 1888)) |