Esempio n. 1
0
def read_binance_log(db, symbols, start, end):
    results = {}
    fields = ["start", "end", "symbol", "date", "count", "inserted"]
    data = read(db["binance"],
                fields=fields,
                symbol=symbols,
                date=(start, end)).sort_values(["date", "symbol"])
    for name, table in data.groupby(data["symbol"]):
        results[name] = table.groupby(table["date"])[["count",
                                                      "inserted"]].sum()
    return data[fields], results
Esempio n. 2
0
 def find(self, *contracts, start=None, end=None, **value):
     value["date"] = (start, end)
     if len(contracts):
         value["contract"] = list(contracts)
     return read(self.collection, ["contract", "date"], ["1M"],
                 **value).sort_index()
Esempio n. 3
0
def diff(col1, col2, date):
    f1 = read(col1, "datetime", FIELDS, **{"date": date})
    f2 = read(col2, "datetime", FIELDS, **{"date": date})
    return compare(f1, f2)
Esempio n. 4
0
 def read(self, index=None, fields=None, hint=None, **filters):
     return read(self.collection, index, fields, hint, **filters)
Esempio n. 5
0
 def indicator_status(self, start=None, end=None):
     status = read(self.daily_indicator,
                   index="trade_date",
                   trade_date=(start, end))
     return status.prod(axis=1)
Esempio n. 6
0
 def factor_status(self, start=None, end=None):
     status = read(self.factor,
                   index="date",
                   date=(self._expand_date(start), self._expand_date(end)),
                   local=2)
     return status["local"].rename_axis(lambda s: s.replace("-", ""))