From 1626eb7f97f3a3d4edbd5a5768dbc68916787a9e Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 22 Sep 2022 20:46:40 +0200 Subject: [PATCH] Update dataprovider function name to `get_producer_df` --- docs/advanced-external-signals.md | 8 ++++---- freqtrade/data/dataprovider.py | 4 ++-- tests/data/test_dataprovider.py | 10 +++++----- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/advanced-external-signals.md b/docs/advanced-external-signals.md index 3fb3ce6ce..43ff8f6d0 100644 --- a/docs/advanced-external-signals.md +++ b/docs/advanced-external-signals.md @@ -39,7 +39,7 @@ Enable subscribing to an instance by adding the `external_message_consumer` sect |------------|-------------| | `enabled` | **Required.** Enable follower mode. If set to false, all other settings in this section are ignored.
*Defaults to `false`.*
**Datatype:** boolean . | `producers` | **Required.** List of producers
**Datatype:** Array. -| `producers.name` | **Required.** Name of this producer. This name must be used in calls to `get_producer_pairs()` and `get_external_df()` if more than one producer is used.
**Datatype:** string +| `producers.name` | **Required.** Name of this producer. This name must be used in calls to `get_producer_pairs()` and `get_producer_df()` if more than one producer is used.
**Datatype:** string | `producers.host` | **Required.** The hostname or IP address from your leader.
**Datatype:** string | `producers.port` | **Required.** The port matching the above host.
**Datatype:** string | `producers.ws_token` | **Required.** `ws_token` as configured on the leader.
**Datatype:** string @@ -106,7 +106,7 @@ class FollowerStrategy(IStrategy): def populate_indicators(self, dataframe: DataFrame, metadata: dict) -> DataFrame: """ Use the websocket api to get pre-populated indicators from another freqtrade instance. - Use `self.dp.get_external_df(pair)` to get the dataframe + Use `self.dp.get_producer_df(pair)` to get the dataframe """ pair = metadata['pair'] timeframe = self.timeframe @@ -116,9 +116,9 @@ class FollowerStrategy(IStrategy): # self.dp.get_producer_pairs("my_other_producer") # This func returns the analyzed dataframe, and when it was analyzed - leader_dataframe, _ = self.dp.get_external_df(pair) + leader_dataframe, _ = self.dp.get_producer_df(pair) # You can get other data if your leader makes it available: - # self.dp.get_external_df( + # self.dp.get_producer_df( # pair, # timeframe="1h", # candle_type=CandleType.SPOT, diff --git a/freqtrade/data/dataprovider.py b/freqtrade/data/dataprovider.py index 031a6d704..1a0903516 100644 --- a/freqtrade/data/dataprovider.py +++ b/freqtrade/data/dataprovider.py @@ -150,7 +150,7 @@ class DataProvider: self.__producer_pairs_df[producer_name][pair_key] = (dataframe, _last_analyzed) logger.debug(f"External DataFrame for {pair_key} from {producer_name} added.") - def get_external_df( + def get_producer_df( self, pair: str, timeframe: Optional[str] = None, @@ -158,7 +158,7 @@ class DataProvider: producer_name: str = "default" ) -> Tuple[DataFrame, datetime]: """ - Get the pair data from the external sources. + Get the pair data from producers. :param pair: pair to get the data for :param timeframe: Timeframe to get data for diff --git a/tests/data/test_dataprovider.py b/tests/data/test_dataprovider.py index 9915b6316..8500fa06c 100644 --- a/tests/data/test_dataprovider.py +++ b/tests/data/test_dataprovider.py @@ -161,7 +161,7 @@ def test_producer_pairs(mocker, default_conf, ohlcv_history): assert dataprovider.get_producer_pairs("bad") == [] -def test_external_df(mocker, default_conf, ohlcv_history): +def test_get_producer_df(mocker, default_conf, ohlcv_history): dataprovider = DataProvider(default_conf, None) pair = 'BTC/USDT' @@ -172,23 +172,23 @@ def test_external_df(mocker, default_conf, ohlcv_history): now = datetime.now(timezone.utc) # no data has been added, any request should return an empty dataframe - dataframe, la = dataprovider.get_external_df(pair, timeframe, candle_type) + dataframe, la = dataprovider.get_producer_df(pair, timeframe, candle_type) assert dataframe.empty assert la == empty_la # the data is added, should return that added dataframe dataprovider._add_external_df(pair, ohlcv_history, now, timeframe, candle_type) - dataframe, la = dataprovider.get_external_df(pair, timeframe, candle_type) + dataframe, la = dataprovider.get_producer_df(pair, timeframe, candle_type) assert len(dataframe) > 0 assert la > empty_la # no data on this producer, should return empty dataframe - dataframe, la = dataprovider.get_external_df(pair, producer_name='bad') + dataframe, la = dataprovider.get_producer_df(pair, producer_name='bad') assert dataframe.empty assert la == empty_la # non existent timeframe, empty dataframe - datframe, la = dataprovider.get_external_df(pair, timeframe='1h') + datframe, la = dataprovider.get_producer_df(pair, timeframe='1h') assert dataframe.empty assert la == empty_la