up
This commit is contained in:
parent
339f24bf80
commit
d748c37f6a
@ -35,7 +35,10 @@
|
||||
},
|
||||
"pair_whitelist": [
|
||||
"BTC/USDT",
|
||||
"SOL/USDT"
|
||||
"OKB/USDT",
|
||||
"TON/USDT",
|
||||
"SOL/USDT",
|
||||
"DOT/USDT"
|
||||
],
|
||||
"pair_blacklist": []
|
||||
},
|
||||
|
||||
@ -96,6 +96,7 @@ class FreqaiPrimer(IStrategy):
|
||||
dataframe = dataframe.replace([np.inf, -np.inf], 0)
|
||||
dataframe = dataframe.ffill()
|
||||
dataframe = dataframe.fillna(0)
|
||||
logger.info(f"最终数据框列:\n{dataframe.columns.to_list()}")
|
||||
return dataframe
|
||||
|
||||
def feature_engineering_expand_basic(self, dataframe: DataFrame, metadata: dict, **kwargs) -> DataFrame:
|
||||
@ -124,6 +125,7 @@ class FreqaiPrimer(IStrategy):
|
||||
try:
|
||||
label_period = self.freqai_info["feature_parameters"]["label_period_candles"]
|
||||
dataframe["%-volatility"] = dataframe["close"].pct_change().rolling(20).std()
|
||||
logger.info(f"Generated %-volatility column: {dataframe['%-volatility'].head().to_string()}")
|
||||
dataframe["&-buy_rsi"] = ta.RSI(dataframe, timeperiod=14).shift(-label_period)
|
||||
|
||||
for col in ["&-buy_rsi", "%-volatility"]:
|
||||
@ -141,7 +143,10 @@ class FreqaiPrimer(IStrategy):
|
||||
|
||||
def populate_indicators(self, dataframe: DataFrame, metadata: dict) -> DataFrame:
|
||||
logger.info(f"处理交易对:{metadata['pair']}")
|
||||
logger.info(f"开始 FreqAI 处理,交易对:{metadata['pair']}")
|
||||
logger.info(f"输入数据框列:\n{dataframe.columns.to_list()}")
|
||||
dataframe = self.freqai.start(dataframe, metadata, self)
|
||||
logger.info(f"FreqAI 处理后数据框列:\n{dataframe.columns.to_list()}")
|
||||
|
||||
# 计算传统指标
|
||||
dataframe["rsi"] = ta.RSI(dataframe, timeperiod=14)
|
||||
@ -162,6 +167,9 @@ class FreqaiPrimer(IStrategy):
|
||||
dataframe = dataframe.fillna(0)
|
||||
|
||||
if "&-buy_rsi" in dataframe.columns:
|
||||
if "%-volatility" not in dataframe.columns or dataframe["%-volatility"].isna().any():
|
||||
logger.error("Critical column '%-volatility' is missing or contains NaN values.")
|
||||
raise ValueError("Missing or invalid '%-volatility' column")
|
||||
# 派生其他目标
|
||||
dataframe["&-sell_rsi"] = dataframe["&-buy_rsi"] + 30
|
||||
dataframe["%-volatility"] = dataframe["close"].pct_change().rolling(20).std()
|
||||
|
||||
@ -34,10 +34,10 @@ fi
|
||||
echo days: $days
|
||||
if [[ "$@" == *"--timerange"* ]]; then
|
||||
timerange=$(get_param_value "--timerange" "$@")
|
||||
docker-compose run --rm freqtrade download-data --config /freqtrade/config_examples/basic.json --pairs BTC/USDT OKB/USDT OKB/BTC XRP/USDT --timeframe 1m 3m 5m 15m 30m 1h 4h 6h 12h 1d --timerange $timerange
|
||||
docker-compose run --rm freqtrade download-data --config /freqtrade/config_examples/basic.json --pairs BTC/USDT OKB/USDT TON/USDT DOT/USDT SOL/USDT XRP/USDT --timeframe 3m 5m 15m 30m 1h 4h 6h 12h 1d --timerange $timerange
|
||||
elif [[ "$@" == *"--days"* ]]; then
|
||||
days=$(get_param_value "--days" "$@")
|
||||
docker-compose run --rm freqtrade download-data --config /freqtrade/config_examples/basic.json --pairs BTC/USDT OKB/USDT OKB/BTC XRP/USDT --timeframe 1m 3m 5m 15m 30m 1h 4h 6h 12h 1d --days $days
|
||||
docker-compose run --rm freqtrade download-data --config /freqtrade/config_examples/basic.json --pairs BTC/USDT OKB/USDT TON/USDT DOT/USDT SOL/USDT XRP/USDT --timeframe 3m 5m 15m 30m 1h 4h 6h 12h 1d --days $days
|
||||
else
|
||||
docker-compose run --rm freqtrade download-data --config /freqtrade/config_examples/basic.json --pairs BTC/USDT OKB/USDT OKB/BTC XRP/USDT --timeframe 1m 3m 5m 15m 30m 1h 4h 6h 12h 1d
|
||||
docker-compose run --rm freqtrade download-data --config /freqtrade/config_examples/basic.json --pairs BTC/USDT OKB/USDT TON/USDT DOT/USDT SOL/USDT XRP/USDT --timeframe 3m 5m 15m 30m 1h 4h 6h 12h 1d
|
||||
fi
|
||||
|
||||
@ -33,7 +33,8 @@ rm -fr ./user_data/dryrun_results/*
|
||||
rm result/*
|
||||
|
||||
hyperopt_config="${STRATEGY_NAME%.py}.json"
|
||||
#docker-compose -f docker-compose_backtest.yml run --rm freqtrade >output.log 2>&1
|
||||
docker rm $(docker ps -aq) -f
|
||||
|
||||
docker-compose run -d --rm -p 8080:8080 freqtrade trade \
|
||||
--logfile /freqtrade/user_data/logs/freqtrade.log \
|
||||
--db-url sqlite:////freqtrade/user_data/tradesv3.sqlite \
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user