Scripts calcul hyperopt multiple
This commit is contained in:
72
tools/read_trends.py
Normal file
72
tools/read_trends.py
Normal file
@@ -0,0 +1,72 @@
|
||||
#!/usr/bin/env python3
|
||||
import os
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
def load_params_tree(base_path="user_data/strategies/params/"):
|
||||
base = Path(base_path)
|
||||
params_tree = {}
|
||||
if not base.exists():
|
||||
raise FileNotFoundError(f"Base path '{base_path}' not found.")
|
||||
|
||||
for pair_dir in base.iterdir():
|
||||
if not pair_dir.is_dir():
|
||||
continue
|
||||
pair = pair_dir.name # ex : BTC-USDT
|
||||
params_tree.setdefault(pair, {})
|
||||
|
||||
for trend_dir in pair_dir.iterdir():
|
||||
if not trend_dir.is_dir():
|
||||
continue
|
||||
trend = trend_dir.name # ex : bull / bear / range
|
||||
params_tree[pair].setdefault(trend, [])
|
||||
|
||||
for file in trend_dir.glob("*-hyperopt_result.json"):
|
||||
filename = file.name
|
||||
|
||||
# Extraire START et END
|
||||
try:
|
||||
prefix = filename.replace("-hyperopt_result.json", "")
|
||||
start, end = prefix.split("-", 1) # split en 2
|
||||
except Exception:
|
||||
start = None
|
||||
end = None
|
||||
|
||||
# Lire le JSON
|
||||
try:
|
||||
with open(file, "r") as f:
|
||||
content = json.load(f)
|
||||
except Exception as err:
|
||||
content = {"error": str(err)}
|
||||
|
||||
params_tree[pair][trend].append({
|
||||
"start": start,
|
||||
"end": end,
|
||||
"file": str(file),
|
||||
"content": content,
|
||||
})
|
||||
|
||||
return params_tree
|
||||
|
||||
def getTrend(data, pair, trend, space, param):
|
||||
return data[pair][trend][0]['content']['params'][space][param]
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
data = load_params_tree("user_data/strategies/params/")
|
||||
# print(data)
|
||||
# Test affichage minimal
|
||||
for pair, trends in data.items():
|
||||
for trend, entries in trends.items():
|
||||
if entries:
|
||||
indic_5m = getTrend(data, pair, trend, 'buy', 'indic_5m')
|
||||
indic_deriv1_5m = getTrend(data, pair, trend, 'buy', 'indic_deriv1_5m')
|
||||
indic_deriv2_5m = getTrend(data, pair, trend, 'buy', 'indic_deriv2_5m')
|
||||
|
||||
indic_5m_sell = getTrend(data, pair, trend, 'sell', 'indic_5m_sell')
|
||||
indic_deriv1_5m_sell = getTrend(data, pair, trend, 'sell', 'indic_deriv1_5m_sell')
|
||||
indic_deriv2_5m_sell = getTrend(data, pair, trend, 'sell', 'indic_deriv2_5m_sell')
|
||||
|
||||
print(f"{pair} -> {trend} -> {indic_5m} {indic_deriv1_5m} {indic_deriv2_5m} {indic_5m_sell} {indic_deriv1_5m_sell} {indic_deriv2_5m_sell}")
|
||||
# for entry in entries:
|
||||
# print(entry)
|
||||
Reference in New Issue
Block a user