From 133ca9c770181387a9f9020953564171f996d03c Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 15 Jun 2020 08:47:18 +0200 Subject: [PATCH] Convert types to support valid json --- freqtrade/rpc/api_server.py | 2 +- freqtrade/rpc/rpc.py | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/freqtrade/rpc/api_server.py b/freqtrade/rpc/api_server.py index 78f5c5046..a04452afd 100644 --- a/freqtrade/rpc/api_server.py +++ b/freqtrade/rpc/api_server.py @@ -517,7 +517,7 @@ class ApiServer(RPC): """ pair = request.args.get("pair") timeframe = request.args.get("timeframe") - limit = request.args.get("limit") + limit = request.args.get("limit", type=int) results = self._rpc_analysed_history(pair, timeframe, limit) return self.rest_dump(results) diff --git a/freqtrade/rpc/rpc.py b/freqtrade/rpc/rpc.py index a6215a892..4b83a3da6 100644 --- a/freqtrade/rpc/rpc.py +++ b/freqtrade/rpc/rpc.py @@ -9,7 +9,7 @@ from math import isnan from typing import Any, Dict, List, Optional, Tuple, Union import arrow -from numpy import NAN, mean +from numpy import NAN, mean, int64 from freqtrade.constants import CANCEL_REASON from freqtrade.exceptions import ExchangeError, PricingError @@ -656,12 +656,14 @@ class RPC: def _rpc_analysed_history(self, pair, timeframe, limit): - data, last_analyzed = self._freqtrade.dataprovider.get_analyzed_dataframe(pair, timeframe) + _data, last_analyzed = self._freqtrade.dataprovider.get_analyzed_dataframe(pair, timeframe) if limit: - data = data.iloc[:-limit] + _data = _data.iloc[-limit:] + _data = _data.replace({NAN: None}) + _data['date'] = _data['date'].astype(int64) // 1000 // 1000 return { - 'columns': data.columns, - 'data': data.values.tolist(), - 'length': len(data), + 'columns': list(_data.columns), + 'data': _data.values.tolist(), + 'length': len(_data), 'last_analyzed': last_analyzed, }