load_data to return dataframe

This commit is contained in:
Matthias 2018-12-15 14:28:37 +01:00
parent c1a32bc6c8
commit 1c5031b468
2 changed files with 6 additions and 5 deletions

View File

@ -13,8 +13,10 @@ from pathlib import Path
from typing import Optional, List, Dict, Tuple, Any from typing import Optional, List, Dict, Tuple, Any
import arrow import arrow
from pandas import DataFrame
from freqtrade import misc, constants, OperationalException from freqtrade import misc, constants, OperationalException
from freqtrade.data.converter import parse_ticker_dataframe
from freqtrade.exchange import Exchange from freqtrade.exchange import Exchange
from freqtrade.arguments import TimeRange from freqtrade.arguments import TimeRange
@ -69,7 +71,7 @@ def load_tickerdata_file(
timerange: Optional[TimeRange] = None) -> Optional[List[Dict]]: timerange: Optional[TimeRange] = None) -> Optional[List[Dict]]:
""" """
Load a pair from file, Load a pair from file,
:return dict OR empty if unsuccesful :return dict(<pair>:<tickerlist>) or None if unsuccesful
""" """
path = make_testdata_path(datadir) path = make_testdata_path(datadir)
pair_s = pair.replace('/', '_') pair_s = pair.replace('/', '_')
@ -99,7 +101,7 @@ def load_data(datadir: Optional[Path],
pairs: List[str], pairs: List[str],
refresh_pairs: Optional[bool] = False, refresh_pairs: Optional[bool] = False,
exchange: Optional[Exchange] = None, exchange: Optional[Exchange] = None,
timerange: TimeRange = TimeRange(None, None, 0, 0)) -> Dict[str, List]: timerange: TimeRange = TimeRange(None, None, 0, 0)) -> Dict[str, DataFrame]:
""" """
Loads ticker history data for the given parameters Loads ticker history data for the given parameters
:return: dict :return: dict
@ -125,7 +127,7 @@ def load_data(datadir: Optional[Path],
logger.warning('Missing data at end for pair %s, data ends at %s', logger.warning('Missing data at end for pair %s, data ends at %s',
pair, pair,
arrow.get(pairdata[-1][0] // 1000).strftime('%Y-%m-%d %H:%M:%S')) arrow.get(pairdata[-1][0] // 1000).strftime('%Y-%m-%d %H:%M:%S'))
result[pair] = pairdata result[pair] = parse_ticker_dataframe(pairdata)
else: else:
logger.warning( logger.warning(
'No data for pair: "%s", Interval: %s. ' 'No data for pair: "%s", Interval: %s. '

View File

@ -13,7 +13,6 @@ import arrow
from pandas import DataFrame from pandas import DataFrame
from freqtrade import constants from freqtrade import constants
from freqtrade.data.converter import parse_ticker_dataframe
from freqtrade.persistence import Trade from freqtrade.persistence import Trade
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -326,7 +325,7 @@ class IStrategy(ABC):
""" """
Creates a dataframe and populates indicators for given ticker data Creates a dataframe and populates indicators for given ticker data
""" """
return {pair: self.advise_indicators(parse_ticker_dataframe(pair_data), {'pair': pair}) return {pair: self.advise_indicators(pair_data, {'pair': pair})
for pair, pair_data in tickerdata.items()} for pair, pair_data in tickerdata.items()}
def advise_indicators(self, dataframe: DataFrame, metadata: dict) -> DataFrame: def advise_indicators(self, dataframe: DataFrame, metadata: dict) -> DataFrame: