Exemplo n.º 1
0
def parse_data(rs):
    data = models.FutureData()
    data.date = rs[0]
    data.open = rs[1]

    data.close = rs[2]
    return data
Exemplo n.º 2
0
def ohlc2(sub_list, timestamp, step):
    data = models.FutureData()
    h = 0
    l = 100000

    if len(sub_list) == 0:
        data.open = 0
        data.close = 0
        data.date = timestamp
        return data

    if sub_list[0].open == 0:
        data.open = h = l = sub_list[0].close
    else:
        data.open = h = l = sub_list[0].open

    data.close = sub_list[-1].close

    data.date = timestamp

    for d in sub_list:
        if step == 1:
            h = d.close if d.close > h else h
            l = d.close if d.close < l else l
        else:
            h = d.high if d.high > h else h
            l = d.low if d.low < l else l

    data.high = h
    data.low = l
    return data
Exemplo n.º 3
0
    def parse_data(self, rs):
        data = models.FutureData()

        if len(rs) == 7:
            data.currency = rs[6]
        data.id = rs[0]
        data.date = rs[1]
        if rs[2] is None or rs[2] == 0:
            data.open = 0
            data.high = 0
            data.low = 0
            data.close = 0
            data.ori_open = 0
            data.ori_high = 0
            data.ori_low = 0
            data.ori_close = 0
        else:
            data.open = rs[2] * (data.currency / 100)
            data.high = rs[3] * (data.currency / 100)
            data.low = rs[4] * (data.currency / 100)
            data.close = rs[5] * (data.currency / 100)

            data.ori_open = rs[2]
            data.ori_high = rs[3]
            data.ori_low = rs[4]
            data.ori_close = rs[5]
        return data
Exemplo n.º 4
0
def ohlc(sub_list, step, length):
    data = models.FutureData()
    h = 0
    l = 100000

    if length == 5:
        data.open = h = l = sub_list[0].close
    else:
        data.open = h = l = sub_list[0].open

    data.close = sub_list[-1].close

    if len(sub_list) == step:
        data.date = sub_list[-1].date
    else:
        dd = sub_list[0].date
        s = dd.strftime('%H:%M:%S')

        delta = datetime.timedelta(minutes=(step - 1) * length)
        if s == '10:15:00':  # 中间休息15分钟
            delta += datetime.timedelta(minutes=15)
        if s == '11:45:00' and length == 30:
            delta += datetime.timedelta(minutes=120)
        tmp_date = sub_list[0].date + delta
        if tmp_date.hour == 15 and tmp_date.minute > 0:
            tmp_date = tmp_date.replace(minute=0)

        if (tmp_date.hour == 1
                and tmp_date.minute > 0) or (tmp_date.hour > 1
                                             and tmp_date.hour < 8):
            tmp_date = tmp_date.replace(hour=1)
            tmp_date = tmp_date.replace(minute=0)

        data.date = tmp_date

    for d in sub_list:
        h = d.close if d.close > h else h
        l = d.close if d.close < l else l

    data.high = h
    data.low = l

    return data
Exemplo n.º 5
0
 def parse_sub_data(self,rs):
     data = models.FutureData()
     data.date = rs[1]
     data.open = rs[2]
     data.close = rs[5]
     return data