feat(validation): WFA tooling + multi-fold results phase1-100 runs
Aggiunge 2 script di analisi per validare i top-K genomi cross-fold: - scripts/analyze_btc_winners.py: per-trade dump (wins/losses/winrate/ avg_win/avg_loss/return/maxDD/Sharpe) per ogni top-K × 4 fold expanding-window WFA. Usato per identificare i winner robusti vs i lucky-shot overfit. - scripts/compare_winners.py: cross-run comparison di 5 winner candidate (BTC 1h + ETH 1h + BTC 5m + ETH 5m) sui medesimi 4 fold, con totali cumulativi. Risultati WFA freezati: - validation-btc-100-001.json: BTC 1h baseline (undertrading=10) - validation-btc-100-001-thr3.json: BTC 1h con threshold=3 (rilassato per strategie ultra-selettive) - validation-btc-100-5m-thr3.json: BTC 5m con threshold=3 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,125 @@
|
|||||||
|
"""Analisi per-trade dei top-K candidate del run BTC.
|
||||||
|
|
||||||
|
Per ciascun genome top-K, ri-esegue il backtest su ogni fold WFA e raccoglie:
|
||||||
|
- n_trades, n_wins, n_losses, win_rate
|
||||||
|
- max_drawdown
|
||||||
|
- return, sharpe
|
||||||
|
- list trade pnl summary
|
||||||
|
|
||||||
|
Output stampato a stdout, non scrive su disco.
|
||||||
|
"""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
import pandas as pd # type: ignore[import-untyped]
|
||||||
|
|
||||||
|
from multi_swarm_core.agents.hypothesis import _try_parse
|
||||||
|
from multi_swarm_core.backtest.engine import BacktestEngine
|
||||||
|
from multi_swarm_core.cerbero.client import CerberoClient
|
||||||
|
from multi_swarm_core.config import load_settings
|
||||||
|
from multi_swarm_core.data.cerbero_ohlcv import CerberoOHLCVLoader, OHLCVRequest
|
||||||
|
from multi_swarm_core.data.splits import expanding_walk_forward
|
||||||
|
from multi_swarm_core.metrics.basic import max_drawdown, sharpe_ratio, total_return
|
||||||
|
from multi_swarm_core.persistence.repository import Repository
|
||||||
|
from multi_swarm_core.protocol.compiler import compile_strategy
|
||||||
|
|
||||||
|
|
||||||
|
def main() -> None:
|
||||||
|
ap = argparse.ArgumentParser()
|
||||||
|
ap.add_argument("--run-id", required=True)
|
||||||
|
ap.add_argument("--top-k", type=int, default=10)
|
||||||
|
ap.add_argument("--n-folds", type=int, default=4)
|
||||||
|
ap.add_argument("--train-ratio", type=float, default=0.5)
|
||||||
|
ap.add_argument("--symbol", default="BTC-PERPETUAL")
|
||||||
|
ap.add_argument("--timeframe", default="1h")
|
||||||
|
ap.add_argument("--start", default="2018-09-01T00:00:00+00:00")
|
||||||
|
ap.add_argument("--end", default="2026-01-01T00:00:00+00:00")
|
||||||
|
ap.add_argument("--fees-bp", type=float, default=5.0)
|
||||||
|
args = ap.parse_args()
|
||||||
|
|
||||||
|
settings = load_settings()
|
||||||
|
repo = Repository(settings.ga_db_path)
|
||||||
|
repo.init_schema()
|
||||||
|
all_evals = repo.list_evaluations(args.run_id)
|
||||||
|
parseable = [
|
||||||
|
e for e in all_evals
|
||||||
|
if e.get("raw_text") and not e.get("parse_error") and e["fitness"] > 0
|
||||||
|
]
|
||||||
|
parseable.sort(key=lambda e: e["fitness"], reverse=True)
|
||||||
|
seen: set[str] = set()
|
||||||
|
top: list[dict] = []
|
||||||
|
for e in parseable:
|
||||||
|
if e["genome_id"] in seen:
|
||||||
|
continue
|
||||||
|
seen.add(e["genome_id"])
|
||||||
|
top.append(e)
|
||||||
|
if len(top) >= args.top_k:
|
||||||
|
break
|
||||||
|
|
||||||
|
token = (
|
||||||
|
settings.cerbero_mainnet_token.get_secret_value()
|
||||||
|
if settings.cerbero_mainnet_token
|
||||||
|
else settings.cerbero_testnet_token.get_secret_value()
|
||||||
|
)
|
||||||
|
cerbero = CerberoClient(
|
||||||
|
base_url=settings.cerbero_base_url,
|
||||||
|
token=token,
|
||||||
|
bot_tag=settings.cerbero_bot_tag,
|
||||||
|
)
|
||||||
|
loader = CerberoOHLCVLoader(client=cerbero, cache_dir=settings.series_dir)
|
||||||
|
ohlcv = loader.load(OHLCVRequest(
|
||||||
|
symbol=args.symbol,
|
||||||
|
timeframe=args.timeframe,
|
||||||
|
start=datetime.fromisoformat(args.start),
|
||||||
|
end=datetime.fromisoformat(args.end),
|
||||||
|
))
|
||||||
|
splits = expanding_walk_forward(ohlcv.index, train_ratio=args.train_ratio, n_folds=args.n_folds)
|
||||||
|
engine = BacktestEngine(fees_bp=args.fees_bp)
|
||||||
|
|
||||||
|
print(f"\n{'=' * 110}")
|
||||||
|
print(f"PER-TRADE ANALYSIS — top-{len(top)} genomes × {len(splits)} folds")
|
||||||
|
print(f"{'=' * 110}")
|
||||||
|
|
||||||
|
for ev in top:
|
||||||
|
strat, err = _try_parse(ev["raw_text"] or "")
|
||||||
|
if strat is None:
|
||||||
|
print(f"\n>>> {ev['genome_id'][:16]} — parse error: {err}")
|
||||||
|
continue
|
||||||
|
|
||||||
|
print(f"\n>>> {ev['genome_id']} (fit_IS={ev['fitness']:.4f}, sharpe_IS={ev['sharpe']:.3f})")
|
||||||
|
print(f"{'fold':<5} {'period':<26} {'trades':>7} {'wins':>5} {'losses':>7} {'win%':>6} {'avg_w':>9} {'avg_l':>9} {'ret':>7} {'maxDD':>7} {'sharpe':>7}")
|
||||||
|
for s in splits:
|
||||||
|
test_df = ohlcv.loc[s.test_idx]
|
||||||
|
try:
|
||||||
|
signal_fn = compile_strategy(strat)
|
||||||
|
signals = signal_fn(test_df)
|
||||||
|
bt = engine.run(test_df, signals)
|
||||||
|
except Exception as e:
|
||||||
|
print(f" fold {s.fold}: error {e}")
|
||||||
|
continue
|
||||||
|
trades = bt.trades
|
||||||
|
n_trades = len(trades)
|
||||||
|
wins = [t.net_pnl for t in trades if t.net_pnl > 0]
|
||||||
|
losses = [t.net_pnl for t in trades if t.net_pnl <= 0]
|
||||||
|
n_wins = len(wins)
|
||||||
|
n_losses = len(losses)
|
||||||
|
win_rate = (n_wins / n_trades * 100) if n_trades else 0.0
|
||||||
|
avg_w = (sum(wins) / n_wins) if n_wins else 0.0
|
||||||
|
avg_l = (sum(losses) / n_losses) if n_losses else 0.0
|
||||||
|
# Normalize equity for DD/return
|
||||||
|
if n_trades > 0:
|
||||||
|
notional = float(test_df["close"].iloc[0])
|
||||||
|
equity_pos = (bt.equity_curve / notional) + 1.0
|
||||||
|
ret_pct = total_return(equity_pos)
|
||||||
|
dd = max_drawdown(equity_pos)
|
||||||
|
sr = sharpe_ratio(bt.returns, periods_per_year=8760)
|
||||||
|
else:
|
||||||
|
ret_pct = dd = sr = 0.0
|
||||||
|
period = f"{str(s.test_idx[0])[:10]}..{str(s.test_idx[-1])[:10]}"
|
||||||
|
print(f"{s.fold:<5} {period:<26} {n_trades:>7} {n_wins:>5} {n_losses:>7} {win_rate:>5.1f}% {avg_w:>9.1f} {avg_l:>9.1f} {ret_pct:>6.2%} {dd:>6.2%} {sr:>7.3f}")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
@@ -0,0 +1,139 @@
|
|||||||
|
"""Confronto per-trade dei 4 winner cross-run (BTC/ETH × 1h/5m).
|
||||||
|
|
||||||
|
Per ogni winner: ri-esegue il backtest su 4 fold WFA expanding-window e raccoglie
|
||||||
|
trade buoni/non buoni, win-rate, avg PnL, return, max DD, Sharpe.
|
||||||
|
"""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
import pandas as pd # type: ignore[import-untyped]
|
||||||
|
|
||||||
|
from multi_swarm_core.agents.hypothesis import _try_parse
|
||||||
|
from multi_swarm_core.backtest.engine import BacktestEngine
|
||||||
|
from multi_swarm_core.cerbero.client import CerberoClient
|
||||||
|
from multi_swarm_core.config import load_settings
|
||||||
|
from multi_swarm_core.data.cerbero_ohlcv import CerberoOHLCVLoader, OHLCVRequest
|
||||||
|
from multi_swarm_core.data.splits import expanding_walk_forward
|
||||||
|
from multi_swarm_core.metrics.basic import max_drawdown, sharpe_ratio, total_return
|
||||||
|
from multi_swarm_core.persistence.repository import Repository
|
||||||
|
from multi_swarm_core.protocol.compiler import compile_strategy
|
||||||
|
|
||||||
|
|
||||||
|
# (run_name, genome_id, symbol, timeframe, label)
|
||||||
|
WINNERS = [
|
||||||
|
("phase1-btc-100-001", "238e481262c1594c", "BTC-PERPETUAL", "1h", "BTC 1h sharpshooter (Gen 7)"),
|
||||||
|
("phase1-btc-100-001", "23a24989e2ed0f84", "BTC-PERPETUAL", "1h", "BTC 1h robust (Gen 0 elite)"),
|
||||||
|
("phase1-eth-100-001", "4b45a72c13acf1d5", "ETH-PERPETUAL", "1h", "ETH 1h best-by-sharpe (killed)"),
|
||||||
|
("phase1-btc-100-5m-001", "f8ca6642adf7e0cd", "BTC-PERPETUAL", "5m", "BTC 5m robust winner"),
|
||||||
|
("phase1-eth-100-5m-001", "c04dff7086bb9588", "ETH-PERPETUAL", "5m", "ETH 5m OOS winner"),
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
def analyze_genome(run_id: str, genome_id: str, symbol: str, timeframe: str, label: str,
|
||||||
|
settings, cerbero, loader) -> None:
|
||||||
|
repo = Repository(settings.ga_db_path)
|
||||||
|
repo.init_schema()
|
||||||
|
evs = [e for e in repo.list_evaluations(run_id) if e["genome_id"] == genome_id]
|
||||||
|
if not evs:
|
||||||
|
print(f" no eval for {genome_id} in {run_id}")
|
||||||
|
return
|
||||||
|
ev = evs[0]
|
||||||
|
strat, err = _try_parse(ev.get("raw_text") or "")
|
||||||
|
if strat is None:
|
||||||
|
print(f" parse error: {err}")
|
||||||
|
return
|
||||||
|
|
||||||
|
req = OHLCVRequest(
|
||||||
|
symbol=symbol, timeframe=timeframe,
|
||||||
|
start=datetime.fromisoformat("2018-09-01T00:00:00+00:00"),
|
||||||
|
end=datetime.fromisoformat("2026-01-01T00:00:00+00:00"),
|
||||||
|
)
|
||||||
|
ohlcv = loader.load(req)
|
||||||
|
splits = expanding_walk_forward(ohlcv.index, train_ratio=0.5, n_folds=4)
|
||||||
|
engine = BacktestEngine(fees_bp=5.0)
|
||||||
|
|
||||||
|
print(f"\n>>> {label}")
|
||||||
|
print(f" {genome_id} | fit_IS={ev['fitness']:.4f} sharpe_IS={ev['sharpe']:.3f} trades_IS={ev['n_trades']}")
|
||||||
|
print(f" {'fold':<5} {'period':<26} {'trades':>7} {'wins':>5} {'losses':>7} {'win%':>6} {'avg_w':>10} {'avg_l':>10} {'ret':>8} {'maxDD':>7} {'sharpe':>7}")
|
||||||
|
|
||||||
|
sum_ret = 0.0
|
||||||
|
sum_trades = 0
|
||||||
|
sum_wins = 0
|
||||||
|
for s in splits:
|
||||||
|
test_df = ohlcv.loc[s.test_idx]
|
||||||
|
try:
|
||||||
|
signal_fn = compile_strategy(strat)
|
||||||
|
signals = signal_fn(test_df)
|
||||||
|
bt = engine.run(test_df, signals)
|
||||||
|
except Exception as e:
|
||||||
|
print(f" fold {s.fold}: error {e}")
|
||||||
|
continue
|
||||||
|
|
||||||
|
trades = bt.trades
|
||||||
|
n = len(trades)
|
||||||
|
wins = [t.net_pnl for t in trades if t.net_pnl > 0]
|
||||||
|
losses = [t.net_pnl for t in trades if t.net_pnl <= 0]
|
||||||
|
nw, nl = len(wins), len(losses)
|
||||||
|
wr = (nw / n * 100) if n else 0.0
|
||||||
|
aw = (sum(wins) / nw) if nw else 0.0
|
||||||
|
al = (sum(losses) / nl) if nl else 0.0
|
||||||
|
if n > 0:
|
||||||
|
notional = float(test_df["close"].iloc[0])
|
||||||
|
eq = (bt.equity_curve / notional) + 1.0
|
||||||
|
ret = total_return(eq)
|
||||||
|
dd = max_drawdown(eq)
|
||||||
|
sr = sharpe_ratio(bt.returns, periods_per_year=8760)
|
||||||
|
else:
|
||||||
|
ret = dd = sr = 0.0
|
||||||
|
period = f"{str(s.test_idx[0])[:10]}..{str(s.test_idx[-1])[:10]}"
|
||||||
|
print(f" {s.fold:<5} {period:<26} {n:>7} {nw:>5} {nl:>7} {wr:>5.1f}% {aw:>10.1f} {al:>10.1f} {ret:>7.2%} {dd:>6.2%} {sr:>7.3f}")
|
||||||
|
sum_ret += ret
|
||||||
|
sum_trades += n
|
||||||
|
sum_wins += nw
|
||||||
|
overall_wr = (sum_wins / sum_trades * 100) if sum_trades else 0.0
|
||||||
|
print(f" {'='*5} TOTALS: {sum_trades:>7} {sum_wins:>5} {sum_trades-sum_wins:>7} {overall_wr:>5.1f}% cum_ret={sum_ret:+.2%}")
|
||||||
|
|
||||||
|
|
||||||
|
def main() -> None:
|
||||||
|
settings = load_settings()
|
||||||
|
repo = Repository(settings.ga_db_path)
|
||||||
|
repo.init_schema()
|
||||||
|
name_to_id: dict[str, str] = {}
|
||||||
|
for w in WINNERS:
|
||||||
|
run_name = w[0]
|
||||||
|
if run_name in name_to_id:
|
||||||
|
continue
|
||||||
|
runs = repo.list_runs()
|
||||||
|
for r in runs:
|
||||||
|
if r["name"] == run_name:
|
||||||
|
name_to_id[run_name] = r["id"]
|
||||||
|
break
|
||||||
|
|
||||||
|
token = (
|
||||||
|
settings.cerbero_mainnet_token.get_secret_value()
|
||||||
|
if settings.cerbero_mainnet_token
|
||||||
|
else settings.cerbero_testnet_token.get_secret_value()
|
||||||
|
)
|
||||||
|
cerbero = CerberoClient(
|
||||||
|
base_url=settings.cerbero_base_url,
|
||||||
|
token=token,
|
||||||
|
bot_tag=settings.cerbero_bot_tag,
|
||||||
|
)
|
||||||
|
loader = CerberoOHLCVLoader(client=cerbero, cache_dir=settings.series_dir)
|
||||||
|
|
||||||
|
print(f"{'='*120}")
|
||||||
|
print(f"PER-TRADE COMPARISON — {len(WINNERS)} winner candidates × 4 folds WFA")
|
||||||
|
print(f"{'='*120}")
|
||||||
|
|
||||||
|
for run_name, genome_id, symbol, timeframe, label in WINNERS:
|
||||||
|
run_id = name_to_id.get(run_name)
|
||||||
|
if not run_id:
|
||||||
|
print(f"!!! run not found: {run_name}")
|
||||||
|
continue
|
||||||
|
analyze_genome(run_id, genome_id, symbol, timeframe, label, settings, cerbero, loader)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
@@ -0,0 +1,634 @@
|
|||||||
|
{
|
||||||
|
"run_id": "0392aa1c2d644459afa5a23f43c38ac6",
|
||||||
|
"run_name": "phase1-btc-100-001",
|
||||||
|
"n_folds": 4,
|
||||||
|
"top_k_requested": 10,
|
||||||
|
"top_k_evaluated": 10,
|
||||||
|
"symbol": "BTC-PERPETUAL",
|
||||||
|
"timeframe": "1h",
|
||||||
|
"start": "2018-09-01T00:00:00+00:00",
|
||||||
|
"end": "2026-01-01T00:00:00+00:00",
|
||||||
|
"ohlcv_bars": 64297,
|
||||||
|
"results": [
|
||||||
|
{
|
||||||
|
"genome_id": "23a24989e2ed0f84",
|
||||||
|
"fitness_is": 0.25047738452013774,
|
||||||
|
"sharpe_is": 0.5152551943136504,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.4454407113532186,
|
||||||
|
"sharpe": 0.940612398713799,
|
||||||
|
"dsr": 0.09856838950479485,
|
||||||
|
"dsr_pvalue": 0.9014316104952051,
|
||||||
|
"return": 0.12691347502077277,
|
||||||
|
"max_dd": 0.08467873586477132,
|
||||||
|
"n_trades": 50,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.33651846595831003,
|
||||||
|
"sharpe": 0.6297236131089199,
|
||||||
|
"dsr": 0.05704792862404472,
|
||||||
|
"dsr_pvalue": 0.9429520713759553,
|
||||||
|
"return": 0.16916039262594973,
|
||||||
|
"max_dd": 0.2420995418754207,
|
||||||
|
"n_trades": 61,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.08496628060413243,
|
||||||
|
"sharpe": -0.291593157960215,
|
||||||
|
"dsr": 0.006828013272159182,
|
||||||
|
"dsr_pvalue": 0.9931719867278408,
|
||||||
|
"return": -0.06496567446731383,
|
||||||
|
"max_dd": 0.1933746053658072,
|
||||||
|
"n_trades": 72,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.10029133262703777,
|
||||||
|
"sharpe": -0.08634860278039096,
|
||||||
|
"dsr": 0.01165220864726802,
|
||||||
|
"dsr_pvalue": 0.988347791352732,
|
||||||
|
"return": -0.007636913661893563,
|
||||||
|
"max_dd": 0.061872083556258554,
|
||||||
|
"n_trades": 29,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.2418041976356747,
|
||||||
|
"fitness_oos_min": 0.08496628060413243,
|
||||||
|
"fitness_oos_max": 0.4454407113532186,
|
||||||
|
"fitness_oos_std": 0.15416115393045135,
|
||||||
|
"sharpe_oos_mean": 0.2980985627705282,
|
||||||
|
"sharpe_oos_min": -0.291593157960215,
|
||||||
|
"robust_score": 0.08496628060413243
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "ddda3a5d7fcf95d8",
|
||||||
|
"fitness_is": 0.24345612215631274,
|
||||||
|
"sharpe_is": 0.4859910845049414,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.38630034957174436,
|
||||||
|
"sharpe": 0.6292230751631145,
|
||||||
|
"dsr": 0.05660411470808308,
|
||||||
|
"dsr_pvalue": 0.9433958852919169,
|
||||||
|
"return": 0.0808908197444953,
|
||||||
|
"max_dd": 0.08123461559976199,
|
||||||
|
"n_trades": 44,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.3444344428619903,
|
||||||
|
"sharpe": 0.670768621640302,
|
||||||
|
"dsr": 0.06172291934756436,
|
||||||
|
"dsr_pvalue": 0.9382770806524356,
|
||||||
|
"return": 0.1769344040247678,
|
||||||
|
"max_dd": 0.24038922925189188,
|
||||||
|
"n_trades": 46,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.08496628060413243,
|
||||||
|
"sharpe": -0.291593157960215,
|
||||||
|
"dsr": 0.006828013272159182,
|
||||||
|
"dsr_pvalue": 0.9931719867278408,
|
||||||
|
"return": -0.06496567446731383,
|
||||||
|
"max_dd": 0.1933746053658072,
|
||||||
|
"n_trades": 72,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.10134367585820397,
|
||||||
|
"sharpe": -0.25028965416710486,
|
||||||
|
"dsr": 0.0070613574740692985,
|
||||||
|
"dsr_pvalue": 0.9929386425259307,
|
||||||
|
"return": -0.01793962898000656,
|
||||||
|
"max_dd": 0.05380115145734951,
|
||||||
|
"n_trades": 18,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.22926118722401778,
|
||||||
|
"fitness_oos_min": 0.08496628060413243,
|
||||||
|
"fitness_oos_max": 0.38630034957174436,
|
||||||
|
"fitness_oos_std": 0.13703109785336132,
|
||||||
|
"sharpe_oos_mean": 0.18952722116902415,
|
||||||
|
"sharpe_oos_min": -0.291593157960215,
|
||||||
|
"robust_score": 0.08496628060413243
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "75fffb926a15ff30",
|
||||||
|
"fitness_is": 0.2317839302261713,
|
||||||
|
"sharpe_is": 0.5074946608465971,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.06821040478798467,
|
||||||
|
"sharpe": -0.42408026342979865,
|
||||||
|
"dsr": 0.004964388516380099,
|
||||||
|
"dsr_pvalue": 0.9950356114836199,
|
||||||
|
"return": -0.004117833402575766,
|
||||||
|
"max_dd": 0.01551842276077859,
|
||||||
|
"n_trades": 12,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.30367484453258525,
|
||||||
|
"sharpe": 0.7648008345130556,
|
||||||
|
"dsr": 0.0596988345287043,
|
||||||
|
"dsr_pvalue": 0.9403011654712957,
|
||||||
|
"return": 0.040989700605122525,
|
||||||
|
"max_dd": 0.036878373324561994,
|
||||||
|
"n_trades": 31,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.014172300674502565,
|
||||||
|
"sharpe": -1.443859476065376,
|
||||||
|
"dsr": 9.400808942425867e-05,
|
||||||
|
"dsr_pvalue": 0.9999059919105757,
|
||||||
|
"return": -0.02894431062955649,
|
||||||
|
"max_dd": 0.036019686142963456,
|
||||||
|
"n_trades": 7,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.15455497647301103,
|
||||||
|
"sharpe": 0.11384980407793575,
|
||||||
|
"dsr": 0.018924861238402986,
|
||||||
|
"dsr_pvalue": 0.981075138761597,
|
||||||
|
"return": 0.004017688385377749,
|
||||||
|
"max_dd": 0.034520559216801125,
|
||||||
|
"n_trades": 21,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.1351531316170209,
|
||||||
|
"fitness_oos_min": 0.014172300674502565,
|
||||||
|
"fitness_oos_max": 0.30367484453258525,
|
||||||
|
"fitness_oos_std": 0.1094231344810833,
|
||||||
|
"sharpe_oos_mean": -0.24732227522604583,
|
||||||
|
"sharpe_oos_min": -1.443859476065376,
|
||||||
|
"robust_score": 0.014172300674502565
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "1cba64abfb67fd63",
|
||||||
|
"fitness_is": 0.24779915639787098,
|
||||||
|
"sharpe_is": 0.686744434641618,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.23623418911693914,
|
||||||
|
"sharpe": 0.3904002210885913,
|
||||||
|
"dsr": 0.03526702699157904,
|
||||||
|
"dsr_pvalue": 0.964732973008421,
|
||||||
|
"return": 0.04525398577066886,
|
||||||
|
"max_dd": 0.09020089585606307,
|
||||||
|
"n_trades": 71,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.018226313030461766,
|
||||||
|
"sharpe": -1.287441608051841,
|
||||||
|
"dsr": 0.0005995136178100196,
|
||||||
|
"dsr_pvalue": 0.99940048638219,
|
||||||
|
"return": -0.08712458661694344,
|
||||||
|
"max_dd": 0.08774369104277313,
|
||||||
|
"n_trades": 23,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.005524367416662587,
|
||||||
|
"sharpe": -1.78701596924334,
|
||||||
|
"dsr": 2.01452172810692e-05,
|
||||||
|
"dsr_pvalue": 0.9999798547827189,
|
||||||
|
"return": -0.338652173037419,
|
||||||
|
"max_dd": 0.3725940753872713,
|
||||||
|
"n_trades": 60,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0633884962634609,
|
||||||
|
"sharpe": -0.551177699295004,
|
||||||
|
"dsr": 0.003506443748025072,
|
||||||
|
"dsr_pvalue": 0.9964935562519749,
|
||||||
|
"return": -0.05484487559184925,
|
||||||
|
"max_dd": 0.10783012035662387,
|
||||||
|
"n_trades": 53,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0808433414568811,
|
||||||
|
"fitness_oos_min": 0.005524367416662587,
|
||||||
|
"fitness_oos_max": 0.23623418911693914,
|
||||||
|
"fitness_oos_std": 0.09225620203631806,
|
||||||
|
"sharpe_oos_mean": -0.8088087638753985,
|
||||||
|
"sharpe_oos_min": -1.78701596924334,
|
||||||
|
"robust_score": 0.005524367416662587
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "238e481262c1594c",
|
||||||
|
"fitness_is": 0.2604059091373716,
|
||||||
|
"sharpe_is": 0.4370965264203703,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.7584616560730608,
|
||||||
|
"sharpe": 2.414722662010953,
|
||||||
|
"dsr": 0.5606058252346415,
|
||||||
|
"dsr_pvalue": 0.43939417476535847,
|
||||||
|
"return": 0.0933177386269215,
|
||||||
|
"max_dd": 0.023570677223421994,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.16218807661575446,
|
||||||
|
"sharpe": 0.012873968372421442,
|
||||||
|
"dsr": 0.015091968754361085,
|
||||||
|
"dsr_pvalue": 0.9849080312456389,
|
||||||
|
"return": 0.0016924869828314204,
|
||||||
|
"max_dd": 0.14842112455963283,
|
||||||
|
"n_trades": 15,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.6516189601780499,
|
||||||
|
"sharpe": 2.0590304959441346,
|
||||||
|
"dsr": 0.41524419503560983,
|
||||||
|
"dsr_pvalue": 0.5847558049643902,
|
||||||
|
"return": 0.22153641670021273,
|
||||||
|
"max_dd": 0.0736556977759442,
|
||||||
|
"n_trades": 11,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.3930671732167163,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.7584616560730608,
|
||||||
|
"fitness_oos_std": 0.3194405713707209,
|
||||||
|
"sharpe_oos_mean": 1.1216567815818772,
|
||||||
|
"sharpe_oos_min": 0.0,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "9d484d1d7154e3d8",
|
||||||
|
"fitness_is": 0.24281082171633084,
|
||||||
|
"sharpe_is": 0.5383459590297983,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -0.17966776746614493,
|
||||||
|
"dsr": 0.010596058628339637,
|
||||||
|
"dsr_pvalue": 0.9894039413716603,
|
||||||
|
"return": -0.00014822652679680193,
|
||||||
|
"max_dd": 0.00043372790281119014,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.03510752668391289,
|
||||||
|
"sharpe": -0.9516408190993537,
|
||||||
|
"dsr": 2.2816330745239768e-07,
|
||||||
|
"dsr_pvalue": 0.9999997718366925,
|
||||||
|
"return": -0.022264081410075964,
|
||||||
|
"max_dd": 0.026510937718929387,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -1.2370529718735044,
|
||||||
|
"dsr": 3.550540879152349e-10,
|
||||||
|
"dsr_pvalue": 0.9999999996449459,
|
||||||
|
"return": -0.005011777500302128,
|
||||||
|
"max_dd": 0.005011777500302128,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.009397695173924475,
|
||||||
|
"sharpe": -1.662121842926161,
|
||||||
|
"dsr": 6.564863915519434e-10,
|
||||||
|
"dsr_pvalue": 0.9999999993435136,
|
||||||
|
"return": -0.023018388061418094,
|
||||||
|
"max_dd": 0.02710730869264358,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.011126305464459342,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.03510752668391289,
|
||||||
|
"fitness_oos_std": 0.014367292814669608,
|
||||||
|
"sharpe_oos_mean": -1.0076208503412911,
|
||||||
|
"sharpe_oos_min": -1.662121842926161,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "e1f8b425fec3b95e",
|
||||||
|
"fitness_is": 0.23502719247621787,
|
||||||
|
"sharpe_is": 0.49764640014032885,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -1.3160615555061568,
|
||||||
|
"dsr": 2.0480110912755528e-14,
|
||||||
|
"dsr_pvalue": 0.9999999999999796,
|
||||||
|
"return": -0.004197667464114874,
|
||||||
|
"max_dd": 0.004197667464114874,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.0,
|
||||||
|
"fitness_oos_std": 0.0,
|
||||||
|
"sharpe_oos_mean": -0.3290153888765392,
|
||||||
|
"sharpe_oos_min": -1.3160615555061568,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "de4c3cce96bc6233",
|
||||||
|
"fitness_is": 0.22983732104518312,
|
||||||
|
"sharpe_is": 0.3042292766075092,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.7099634427811606,
|
||||||
|
"sharpe": 2.175438924887508,
|
||||||
|
"dsr": 0.4516683289747405,
|
||||||
|
"dsr_pvalue": 0.5483316710252595,
|
||||||
|
"return": 0.05162527264229322,
|
||||||
|
"max_dd": 0.013388106636764294,
|
||||||
|
"n_trades": 5,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.11214839774268798,
|
||||||
|
"sharpe": -0.09717412830030508,
|
||||||
|
"dsr": 0.011407831629063609,
|
||||||
|
"dsr_pvalue": 0.9885921683709364,
|
||||||
|
"return": -0.010810784900084469,
|
||||||
|
"max_dd": 0.146727446687109,
|
||||||
|
"n_trades": 17,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.48948263578942797,
|
||||||
|
"sharpe": 1.2111587578615337,
|
||||||
|
"dsr": 0.15099566068576153,
|
||||||
|
"dsr_pvalue": 0.8490043393142385,
|
||||||
|
"return": 0.09392150449517889,
|
||||||
|
"max_dd": 0.09248924622174504,
|
||||||
|
"n_trades": 17,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.32789861907831913,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.7099634427811606,
|
||||||
|
"fitness_oos_std": 0.28554710047880966,
|
||||||
|
"sharpe_oos_mean": 0.8223558886121842,
|
||||||
|
"sharpe_oos_min": -0.09717412830030508,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "14711c6816c009bb",
|
||||||
|
"fitness_is": 0.2231252597460312,
|
||||||
|
"sharpe_is": 0.5100989455793494,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.041279942400821015,
|
||||||
|
"sharpe": -0.7516739863723977,
|
||||||
|
"dsr": 0.0003109810948998818,
|
||||||
|
"dsr_pvalue": 0.9996890189051001,
|
||||||
|
"return": -0.002913092808893847,
|
||||||
|
"max_dd": 0.003336150788066372,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.010319985600205254,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.041279942400821015,
|
||||||
|
"fitness_oos_std": 0.017874739392934696,
|
||||||
|
"sharpe_oos_mean": -0.18791849659309942,
|
||||||
|
"sharpe_oos_min": -0.7516739863723977,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "c7f6f7c415a8c1df",
|
||||||
|
"fitness_is": 0.2231252597460312,
|
||||||
|
"sharpe_is": 0.5100989455793494,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.041279942400821015,
|
||||||
|
"sharpe": -0.7516739863723977,
|
||||||
|
"dsr": 0.0003109810948998818,
|
||||||
|
"dsr_pvalue": 0.9996890189051001,
|
||||||
|
"return": -0.002913092808893847,
|
||||||
|
"max_dd": 0.003336150788066372,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.010319985600205254,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.041279942400821015,
|
||||||
|
"fitness_oos_std": 0.017874739392934696,
|
||||||
|
"sharpe_oos_mean": -0.18791849659309942,
|
||||||
|
"sharpe_oos_min": -0.7516739863723977,
|
||||||
|
"robust_score": 0.0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,634 @@
|
|||||||
|
{
|
||||||
|
"run_id": "0392aa1c2d644459afa5a23f43c38ac6",
|
||||||
|
"run_name": "phase1-btc-100-001",
|
||||||
|
"n_folds": 4,
|
||||||
|
"top_k_requested": 10,
|
||||||
|
"top_k_evaluated": 10,
|
||||||
|
"symbol": "BTC-PERPETUAL",
|
||||||
|
"timeframe": "1h",
|
||||||
|
"start": "2018-09-01T00:00:00+00:00",
|
||||||
|
"end": "2026-01-01T00:00:00+00:00",
|
||||||
|
"ohlcv_bars": 64297,
|
||||||
|
"results": [
|
||||||
|
{
|
||||||
|
"genome_id": "23a24989e2ed0f84",
|
||||||
|
"fitness_is": 0.25047738452013774,
|
||||||
|
"sharpe_is": 0.5152551943136504,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.4454407113532186,
|
||||||
|
"sharpe": 0.940612398713799,
|
||||||
|
"dsr": 0.09856838950479485,
|
||||||
|
"dsr_pvalue": 0.9014316104952051,
|
||||||
|
"return": 0.12691347502077277,
|
||||||
|
"max_dd": 0.08467873586477132,
|
||||||
|
"n_trades": 50,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.33651846595831003,
|
||||||
|
"sharpe": 0.6297236131089199,
|
||||||
|
"dsr": 0.05704792862404472,
|
||||||
|
"dsr_pvalue": 0.9429520713759553,
|
||||||
|
"return": 0.16916039262594973,
|
||||||
|
"max_dd": 0.2420995418754207,
|
||||||
|
"n_trades": 61,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.08496628060413243,
|
||||||
|
"sharpe": -0.291593157960215,
|
||||||
|
"dsr": 0.006828013272159182,
|
||||||
|
"dsr_pvalue": 0.9931719867278408,
|
||||||
|
"return": -0.06496567446731383,
|
||||||
|
"max_dd": 0.1933746053658072,
|
||||||
|
"n_trades": 72,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.10029133262703777,
|
||||||
|
"sharpe": -0.08634860278039096,
|
||||||
|
"dsr": 0.01165220864726802,
|
||||||
|
"dsr_pvalue": 0.988347791352732,
|
||||||
|
"return": -0.007636913661893563,
|
||||||
|
"max_dd": 0.061872083556258554,
|
||||||
|
"n_trades": 29,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.2418041976356747,
|
||||||
|
"fitness_oos_min": 0.08496628060413243,
|
||||||
|
"fitness_oos_max": 0.4454407113532186,
|
||||||
|
"fitness_oos_std": 0.15416115393045135,
|
||||||
|
"sharpe_oos_mean": 0.2980985627705282,
|
||||||
|
"sharpe_oos_min": -0.291593157960215,
|
||||||
|
"robust_score": 0.08496628060413243
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "ddda3a5d7fcf95d8",
|
||||||
|
"fitness_is": 0.24345612215631274,
|
||||||
|
"sharpe_is": 0.4859910845049414,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.38630034957174436,
|
||||||
|
"sharpe": 0.6292230751631145,
|
||||||
|
"dsr": 0.05660411470808308,
|
||||||
|
"dsr_pvalue": 0.9433958852919169,
|
||||||
|
"return": 0.0808908197444953,
|
||||||
|
"max_dd": 0.08123461559976199,
|
||||||
|
"n_trades": 44,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.3444344428619903,
|
||||||
|
"sharpe": 0.670768621640302,
|
||||||
|
"dsr": 0.06172291934756436,
|
||||||
|
"dsr_pvalue": 0.9382770806524356,
|
||||||
|
"return": 0.1769344040247678,
|
||||||
|
"max_dd": 0.24038922925189188,
|
||||||
|
"n_trades": 46,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.08496628060413243,
|
||||||
|
"sharpe": -0.291593157960215,
|
||||||
|
"dsr": 0.006828013272159182,
|
||||||
|
"dsr_pvalue": 0.9931719867278408,
|
||||||
|
"return": -0.06496567446731383,
|
||||||
|
"max_dd": 0.1933746053658072,
|
||||||
|
"n_trades": 72,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.10134367585820397,
|
||||||
|
"sharpe": -0.25028965416710486,
|
||||||
|
"dsr": 0.0070613574740692985,
|
||||||
|
"dsr_pvalue": 0.9929386425259307,
|
||||||
|
"return": -0.01793962898000656,
|
||||||
|
"max_dd": 0.05380115145734951,
|
||||||
|
"n_trades": 18,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.22926118722401778,
|
||||||
|
"fitness_oos_min": 0.08496628060413243,
|
||||||
|
"fitness_oos_max": 0.38630034957174436,
|
||||||
|
"fitness_oos_std": 0.13703109785336132,
|
||||||
|
"sharpe_oos_mean": 0.18952722116902415,
|
||||||
|
"sharpe_oos_min": -0.291593157960215,
|
||||||
|
"robust_score": 0.08496628060413243
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "1cba64abfb67fd63",
|
||||||
|
"fitness_is": 0.24779915639787098,
|
||||||
|
"sharpe_is": 0.686744434641618,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.23623418911693914,
|
||||||
|
"sharpe": 0.3904002210885913,
|
||||||
|
"dsr": 0.03526702699157904,
|
||||||
|
"dsr_pvalue": 0.964732973008421,
|
||||||
|
"return": 0.04525398577066886,
|
||||||
|
"max_dd": 0.09020089585606307,
|
||||||
|
"n_trades": 71,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.018226313030461766,
|
||||||
|
"sharpe": -1.287441608051841,
|
||||||
|
"dsr": 0.0005995136178100196,
|
||||||
|
"dsr_pvalue": 0.99940048638219,
|
||||||
|
"return": -0.08712458661694344,
|
||||||
|
"max_dd": 0.08774369104277313,
|
||||||
|
"n_trades": 23,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.005524367416662587,
|
||||||
|
"sharpe": -1.78701596924334,
|
||||||
|
"dsr": 2.01452172810692e-05,
|
||||||
|
"dsr_pvalue": 0.9999798547827189,
|
||||||
|
"return": -0.338652173037419,
|
||||||
|
"max_dd": 0.3725940753872713,
|
||||||
|
"n_trades": 60,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0633884962634609,
|
||||||
|
"sharpe": -0.551177699295004,
|
||||||
|
"dsr": 0.003506443748025072,
|
||||||
|
"dsr_pvalue": 0.9964935562519749,
|
||||||
|
"return": -0.05484487559184925,
|
||||||
|
"max_dd": 0.10783012035662387,
|
||||||
|
"n_trades": 53,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0808433414568811,
|
||||||
|
"fitness_oos_min": 0.005524367416662587,
|
||||||
|
"fitness_oos_max": 0.23623418911693914,
|
||||||
|
"fitness_oos_std": 0.09225620203631806,
|
||||||
|
"sharpe_oos_mean": -0.8088087638753985,
|
||||||
|
"sharpe_oos_min": -1.78701596924334,
|
||||||
|
"robust_score": 0.005524367416662587
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "238e481262c1594c",
|
||||||
|
"fitness_is": 0.2604059091373716,
|
||||||
|
"sharpe_is": 0.4370965264203703,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 2.414722662010953,
|
||||||
|
"dsr": 0.5606058252346415,
|
||||||
|
"dsr_pvalue": 0.43939417476535847,
|
||||||
|
"return": 0.0933177386269215,
|
||||||
|
"max_dd": 0.023570677223421994,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.16218807661575446,
|
||||||
|
"sharpe": 0.012873968372421442,
|
||||||
|
"dsr": 0.015091968754361085,
|
||||||
|
"dsr_pvalue": 0.9849080312456389,
|
||||||
|
"return": 0.0016924869828314204,
|
||||||
|
"max_dd": 0.14842112455963283,
|
||||||
|
"n_trades": 15,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.6516189601780499,
|
||||||
|
"sharpe": 2.0590304959441346,
|
||||||
|
"dsr": 0.41524419503560983,
|
||||||
|
"dsr_pvalue": 0.5847558049643902,
|
||||||
|
"return": 0.22153641670021273,
|
||||||
|
"max_dd": 0.0736556977759442,
|
||||||
|
"n_trades": 11,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.2034517591984511,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.6516189601780499,
|
||||||
|
"fitness_oos_std": 0.2670869559600687,
|
||||||
|
"sharpe_oos_mean": 1.1216567815818772,
|
||||||
|
"sharpe_oos_min": 0.0,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "9d484d1d7154e3d8",
|
||||||
|
"fitness_is": 0.24281082171633084,
|
||||||
|
"sharpe_is": 0.5383459590297983,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -0.17966776746614493,
|
||||||
|
"dsr": 0.010596058628339637,
|
||||||
|
"dsr_pvalue": 0.9894039413716603,
|
||||||
|
"return": -0.00014822652679680193,
|
||||||
|
"max_dd": 0.00043372790281119014,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -0.9516408190993537,
|
||||||
|
"dsr": 2.2816330745239768e-07,
|
||||||
|
"dsr_pvalue": 0.9999997718366925,
|
||||||
|
"return": -0.022264081410075964,
|
||||||
|
"max_dd": 0.026510937718929387,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -1.2370529718735044,
|
||||||
|
"dsr": 3.550540879152349e-10,
|
||||||
|
"dsr_pvalue": 0.9999999996449459,
|
||||||
|
"return": -0.005011777500302128,
|
||||||
|
"max_dd": 0.005011777500302128,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -1.662121842926161,
|
||||||
|
"dsr": 6.564863915519434e-10,
|
||||||
|
"dsr_pvalue": 0.9999999993435136,
|
||||||
|
"return": -0.023018388061418094,
|
||||||
|
"max_dd": 0.02710730869264358,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.0,
|
||||||
|
"fitness_oos_std": 0.0,
|
||||||
|
"sharpe_oos_mean": -1.0076208503412911,
|
||||||
|
"sharpe_oos_min": -1.662121842926161,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "e1f8b425fec3b95e",
|
||||||
|
"fitness_is": 0.23502719247621787,
|
||||||
|
"sharpe_is": 0.49764640014032885,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -1.3160615555061568,
|
||||||
|
"dsr": 2.0480110912755528e-14,
|
||||||
|
"dsr_pvalue": 0.9999999999999796,
|
||||||
|
"return": -0.004197667464114874,
|
||||||
|
"max_dd": 0.004197667464114874,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.0,
|
||||||
|
"fitness_oos_std": 0.0,
|
||||||
|
"sharpe_oos_mean": -0.3290153888765392,
|
||||||
|
"sharpe_oos_min": -1.3160615555061568,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "75fffb926a15ff30",
|
||||||
|
"fitness_is": 0.2317839302261713,
|
||||||
|
"sharpe_is": 0.5074946608465971,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.06821040478798467,
|
||||||
|
"sharpe": -0.42408026342979865,
|
||||||
|
"dsr": 0.004964388516380099,
|
||||||
|
"dsr_pvalue": 0.9950356114836199,
|
||||||
|
"return": -0.004117833402575766,
|
||||||
|
"max_dd": 0.01551842276077859,
|
||||||
|
"n_trades": 12,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.30367484453258525,
|
||||||
|
"sharpe": 0.7648008345130556,
|
||||||
|
"dsr": 0.0596988345287043,
|
||||||
|
"dsr_pvalue": 0.9403011654712957,
|
||||||
|
"return": 0.040989700605122525,
|
||||||
|
"max_dd": 0.036878373324561994,
|
||||||
|
"n_trades": 31,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -1.443859476065376,
|
||||||
|
"dsr": 9.400808942425867e-05,
|
||||||
|
"dsr_pvalue": 0.9999059919105757,
|
||||||
|
"return": -0.02894431062955649,
|
||||||
|
"max_dd": 0.036019686142963456,
|
||||||
|
"n_trades": 7,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.15455497647301103,
|
||||||
|
"sharpe": 0.11384980407793575,
|
||||||
|
"dsr": 0.018924861238402986,
|
||||||
|
"dsr_pvalue": 0.981075138761597,
|
||||||
|
"return": 0.004017688385377749,
|
||||||
|
"max_dd": 0.034520559216801125,
|
||||||
|
"n_trades": 21,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.13161005644839524,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.30367484453258525,
|
||||||
|
"fitness_oos_std": 0.11343884193961566,
|
||||||
|
"sharpe_oos_mean": -0.24732227522604583,
|
||||||
|
"sharpe_oos_min": -1.443859476065376,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "de4c3cce96bc6233",
|
||||||
|
"fitness_is": 0.22983732104518312,
|
||||||
|
"sharpe_is": 0.3042292766075092,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 2.175438924887508,
|
||||||
|
"dsr": 0.4516683289747405,
|
||||||
|
"dsr_pvalue": 0.5483316710252595,
|
||||||
|
"return": 0.05162527264229322,
|
||||||
|
"max_dd": 0.013388106636764294,
|
||||||
|
"n_trades": 5,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.11214839774268798,
|
||||||
|
"sharpe": -0.09717412830030508,
|
||||||
|
"dsr": 0.011407831629063609,
|
||||||
|
"dsr_pvalue": 0.9885921683709364,
|
||||||
|
"return": -0.010810784900084469,
|
||||||
|
"max_dd": 0.146727446687109,
|
||||||
|
"n_trades": 17,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.48948263578942797,
|
||||||
|
"sharpe": 1.2111587578615337,
|
||||||
|
"dsr": 0.15099566068576153,
|
||||||
|
"dsr_pvalue": 0.8490043393142385,
|
||||||
|
"return": 0.09392150449517889,
|
||||||
|
"max_dd": 0.09248924622174504,
|
||||||
|
"n_trades": 17,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.150407758383029,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.48948263578942797,
|
||||||
|
"fitness_oos_std": 0.20104759307710415,
|
||||||
|
"sharpe_oos_mean": 0.8223558886121842,
|
||||||
|
"sharpe_oos_min": -0.09717412830030508,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "14711c6816c009bb",
|
||||||
|
"fitness_is": 0.2231252597460312,
|
||||||
|
"sharpe_is": 0.5100989455793494,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -0.7516739863723977,
|
||||||
|
"dsr": 0.0003109810948998818,
|
||||||
|
"dsr_pvalue": 0.9996890189051001,
|
||||||
|
"return": -0.002913092808893847,
|
||||||
|
"max_dd": 0.003336150788066372,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.0,
|
||||||
|
"fitness_oos_std": 0.0,
|
||||||
|
"sharpe_oos_mean": -0.18791849659309942,
|
||||||
|
"sharpe_oos_min": -0.7516739863723977,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "c7f6f7c415a8c1df",
|
||||||
|
"fitness_is": 0.2231252597460312,
|
||||||
|
"sharpe_is": 0.5100989455793494,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": -0.7516739863723977,
|
||||||
|
"dsr": 0.0003109810948998818,
|
||||||
|
"dsr_pvalue": 0.9996890189051001,
|
||||||
|
"return": -0.002913092808893847,
|
||||||
|
"max_dd": 0.003336150788066372,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:00:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:00:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.0,
|
||||||
|
"fitness_oos_std": 0.0,
|
||||||
|
"sharpe_oos_mean": -0.18791849659309942,
|
||||||
|
"sharpe_oos_min": -0.7516739863723977,
|
||||||
|
"robust_score": 0.0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,634 @@
|
|||||||
|
{
|
||||||
|
"run_id": "1b3ac5a72ade4eeca96f63af1c692529",
|
||||||
|
"run_name": "phase1-btc-100-5m-001",
|
||||||
|
"n_folds": 4,
|
||||||
|
"top_k_requested": 10,
|
||||||
|
"top_k_evaluated": 10,
|
||||||
|
"symbol": "BTC-PERPETUAL",
|
||||||
|
"timeframe": "5m",
|
||||||
|
"start": "2018-09-01T00:00:00+00:00",
|
||||||
|
"end": "2026-01-01T00:00:00+00:00",
|
||||||
|
"ohlcv_bars": 771553,
|
||||||
|
"results": [
|
||||||
|
{
|
||||||
|
"genome_id": "f8ca6642adf7e0cd",
|
||||||
|
"fitness_is": 0.18938156615467444,
|
||||||
|
"sharpe_is": 0.30869023048836236,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.2352965252827188,
|
||||||
|
"sharpe": 0.3693814228315177,
|
||||||
|
"dsr": 1.683506715156222e-10,
|
||||||
|
"dsr_pvalue": 0.9999999998316493,
|
||||||
|
"return": 0.04254736022830463,
|
||||||
|
"max_dd": 0.027161767758352023,
|
||||||
|
"n_trades": 22,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.225344374241631,
|
||||||
|
"sharpe": 0.2966596569312926,
|
||||||
|
"dsr": 1.0070583060973712e-10,
|
||||||
|
"dsr_pvalue": 0.9999999998992942,
|
||||||
|
"return": 0.0323635859324094,
|
||||||
|
"max_dd": 0.020860357367648123,
|
||||||
|
"n_trades": 4,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.22012851949138668,
|
||||||
|
"sharpe": 0.2582559733706436,
|
||||||
|
"dsr": 6.7095779615621785e-12,
|
||||||
|
"dsr_pvalue": 0.9999999999932904,
|
||||||
|
"return": 0.024874816913196707,
|
||||||
|
"max_dd": 0.01617874217143948,
|
||||||
|
"n_trades": 6,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.10824559047403624,
|
||||||
|
"sharpe": -0.19939596313642038,
|
||||||
|
"dsr": 4.446294307701592e-18,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": -0.012815761172245588,
|
||||||
|
"max_dd": 0.030585031985383666,
|
||||||
|
"n_trades": 4,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.1972537523724432,
|
||||||
|
"fitness_oos_min": 0.10824559047403624,
|
||||||
|
"fitness_oos_max": 0.2352965252827188,
|
||||||
|
"fitness_oos_std": 0.05167698584229592,
|
||||||
|
"sharpe_oos_mean": 0.18122527249925838,
|
||||||
|
"sharpe_oos_min": -0.19939596313642038,
|
||||||
|
"robust_score": 0.10824559047403624
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "44e4031ccb1dc02a",
|
||||||
|
"fitness_is": 0.22571210498548258,
|
||||||
|
"sharpe_is": 0.3821051381739021,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.2750172552747618,
|
||||||
|
"sharpe": 0.6074693455147703,
|
||||||
|
"dsr": 1.1545160457503457e-26,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.043108172266182354,
|
||||||
|
"max_dd": 0.001458755248422002,
|
||||||
|
"n_trades": 10,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.06258366543576925,
|
||||||
|
"dsr": 2.937538417346168e-13,
|
||||||
|
"dsr_pvalue": 0.9999999999997062,
|
||||||
|
"return": 0.005830222073507807,
|
||||||
|
"max_dd": 0.020860357367648123,
|
||||||
|
"n_trades": 2,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.18648515967821389,
|
||||||
|
"sharpe": 0.06128925460246632,
|
||||||
|
"dsr": 1.8274259811076416e-13,
|
||||||
|
"dsr_pvalue": 0.9999999999998173,
|
||||||
|
"return": 0.004414468283732154,
|
||||||
|
"max_dd": 0.01617874217143948,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.11537560373824392,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.2750172552747618,
|
||||||
|
"fitness_oos_std": 0.11954610588306011,
|
||||||
|
"sharpe_oos_mean": 0.18283556638825146,
|
||||||
|
"sharpe_oos_min": 0.0,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "662816b63c4feadf",
|
||||||
|
"fitness_is": 0.20828744896100454,
|
||||||
|
"sharpe_is": 0.20788153582834326,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.09737359146830797,
|
||||||
|
"dsr": 2.4288846142332667e-14,
|
||||||
|
"dsr_pvalue": 0.9999999999999757,
|
||||||
|
"return": 0.0030306913996627216,
|
||||||
|
"max_dd": 0.007271637996670698,
|
||||||
|
"n_trades": 2,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.0,
|
||||||
|
"fitness_oos_std": 0.0,
|
||||||
|
"sharpe_oos_mean": 0.024343397867076993,
|
||||||
|
"sharpe_oos_min": 0.0,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "cf698463450b5daf",
|
||||||
|
"fitness_is": 0.20181196371847498,
|
||||||
|
"sharpe_is": 0.3623641433398033,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.2266655258766632,
|
||||||
|
"sharpe": 0.2999909794832819,
|
||||||
|
"dsr": 6.8141661859725965e-12,
|
||||||
|
"dsr_pvalue": 0.9999999999931858,
|
||||||
|
"return": 0.018823783888960888,
|
||||||
|
"max_dd": 0.01731422516010631,
|
||||||
|
"n_trades": 4,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.44955543499020745,
|
||||||
|
"dsr": 9.481303288744627e-40,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.049849479597766866,
|
||||||
|
"max_dd": 0.004685656497556025,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.04410712874184496,
|
||||||
|
"dsr": 4.2725586842847596e-14,
|
||||||
|
"dsr_pvalue": 0.9999999999999573,
|
||||||
|
"return": 0.004410420254631564,
|
||||||
|
"max_dd": 0.01996463311196068,
|
||||||
|
"n_trades": 2,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.4450404801682897,
|
||||||
|
"dsr": 1.4117362531214693e-27,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0526088849839641,
|
||||||
|
"max_dd": 0.005792329453230141,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0566663814691658,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.2266655258766632,
|
||||||
|
"fitness_oos_std": 0.09814905178567468,
|
||||||
|
"sharpe_oos_mean": 0.30967350584590597,
|
||||||
|
"sharpe_oos_min": 0.04410712874184496,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "ddbfbef72f07d76a",
|
||||||
|
"fitness_is": 0.2007403940095307,
|
||||||
|
"sharpe_is": 0.3527941850815434,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.25816377963939535,
|
||||||
|
"sharpe": 0.5144509577982044,
|
||||||
|
"dsr": 8.645767195175167e-13,
|
||||||
|
"dsr_pvalue": 0.9999999999991355,
|
||||||
|
"return": 0.07304433130107668,
|
||||||
|
"max_dd": 0.01915225360494227,
|
||||||
|
"n_trades": 5,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.44955543499020745,
|
||||||
|
"dsr": 9.481303288744627e-40,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.049849479597766866,
|
||||||
|
"max_dd": 0.004685656497556025,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.23195306903928886,
|
||||||
|
"sharpe": 0.32337815238365364,
|
||||||
|
"dsr": 8.912615856501225e-14,
|
||||||
|
"dsr_pvalue": 0.9999999999999108,
|
||||||
|
"return": 0.033935014244555584,
|
||||||
|
"max_dd": 0.010486324211451901,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.35283933132790596,
|
||||||
|
"dsr": 6.658494490709348e-14,
|
||||||
|
"dsr_pvalue": 0.9999999999999334,
|
||||||
|
"return": 0.05344386510725729,
|
||||||
|
"max_dd": 0.022762761145810856,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.12252921216967105,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.25816377963939535,
|
||||||
|
"fitness_oos_std": 0.12287913982320425,
|
||||||
|
"sharpe_oos_mean": 0.41005596912499287,
|
||||||
|
"sharpe_oos_min": 0.32337815238365364,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "2e49f8e8e6cec686",
|
||||||
|
"fitness_is": 0.19435604112910157,
|
||||||
|
"sharpe_is": 0.3713282033185845,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.26072350293525676,
|
||||||
|
"sharpe": 0.5284128848027025,
|
||||||
|
"dsr": 2.486680252274251e-13,
|
||||||
|
"dsr_pvalue": 0.9999999999997513,
|
||||||
|
"return": 0.05881454144506426,
|
||||||
|
"max_dd": 0.016516772761264658,
|
||||||
|
"n_trades": 5,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.44955543499020745,
|
||||||
|
"dsr": 9.481303288744627e-40,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.049849479597766866,
|
||||||
|
"max_dd": 0.004685656497556025,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.21422619151698888,
|
||||||
|
"sharpe": 0.2269482258874523,
|
||||||
|
"dsr": 3.6571308232390715e-13,
|
||||||
|
"dsr_pvalue": 0.9999999999996343,
|
||||||
|
"return": 0.02568538444204793,
|
||||||
|
"max_dd": 0.019558622265454236,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.4450404801682897,
|
||||||
|
"dsr": 1.4117362531214693e-27,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0526088849839641,
|
||||||
|
"max_dd": 0.005792329453230141,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.11873742361306142,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.26072350293525676,
|
||||||
|
"fitness_oos_std": 0.11987003696674377,
|
||||||
|
"sharpe_oos_mean": 0.412489256462163,
|
||||||
|
"sharpe_oos_min": 0.2269482258874523,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "9852e8e4e480ef21",
|
||||||
|
"fitness_is": 0.1922948882127238,
|
||||||
|
"sharpe_is": 0.15925760158030436,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.1494822926244717,
|
||||||
|
"sharpe": 0.0804180937424291,
|
||||||
|
"dsr": 2.443102889370683e-16,
|
||||||
|
"dsr_pvalue": 0.9999999999999998,
|
||||||
|
"return": 0.0014913672331040573,
|
||||||
|
"max_dd": 0.003691144778103467,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.021783719225659744,
|
||||||
|
"sharpe": -1.222169028737873,
|
||||||
|
"dsr": 2.0819357051846864e-80,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": -0.018262798724970497,
|
||||||
|
"max_dd": 0.018262798724970497,
|
||||||
|
"n_trades": 16,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.042816502962532865,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.1494822926244717,
|
||||||
|
"fitness_oos_std": 0.06222233226062855,
|
||||||
|
"sharpe_oos_mean": -0.285437733748861,
|
||||||
|
"sharpe_oos_min": -1.222169028737873,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "16a1761c8da604e7",
|
||||||
|
"fitness_is": 0.19121238216295305,
|
||||||
|
"sharpe_is": 0.15255013590499958,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.0,
|
||||||
|
"fitness_oos_std": 0.0,
|
||||||
|
"sharpe_oos_mean": 0.0,
|
||||||
|
"sharpe_oos_min": 0.0,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "add18cb7382296fd",
|
||||||
|
"fitness_is": 0.1879996666147147,
|
||||||
|
"sharpe_is": 0.28550736974923013,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.0,
|
||||||
|
"dsr": 0.0,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.0,
|
||||||
|
"max_dd": 0.0,
|
||||||
|
"n_trades": 0,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.44955543499020745,
|
||||||
|
"dsr": 9.481303288744627e-40,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.049849479597766866,
|
||||||
|
"max_dd": 0.004685656497556025,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.150691158813143,
|
||||||
|
"dsr": 4.263193477728488e-17,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.009379645576139906,
|
||||||
|
"max_dd": 0.008611115582095263,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.46456569507517853,
|
||||||
|
"dsr": 9.733950727895419e-26,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.056366295538783584,
|
||||||
|
"max_dd": 0.005792329453230141,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.0,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.0,
|
||||||
|
"fitness_oos_std": 0.0,
|
||||||
|
"sharpe_oos_mean": 0.26620307221963224,
|
||||||
|
"sharpe_oos_min": 0.0,
|
||||||
|
"robust_score": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"genome_id": "4ee566eb5e132d8c",
|
||||||
|
"fitness_is": 0.18745393246665415,
|
||||||
|
"sharpe_is": 0.31006907324235156,
|
||||||
|
"folds": [
|
||||||
|
{
|
||||||
|
"fold": 0,
|
||||||
|
"fitness": 0.2166522335961314,
|
||||||
|
"sharpe": 0.23875257586420637,
|
||||||
|
"dsr": 4.3199206915491695e-12,
|
||||||
|
"dsr_pvalue": 0.9999999999956801,
|
||||||
|
"return": 0.01599067972499668,
|
||||||
|
"max_dd": 0.01736213317014228,
|
||||||
|
"n_trades": 3,
|
||||||
|
"test_start": "2022-05-02 12:00:00+00:00",
|
||||||
|
"test_end": "2023-04-02 08:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 1,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.44955543499020745,
|
||||||
|
"dsr": 9.481303288744627e-40,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.049849479597766866,
|
||||||
|
"max_dd": 0.004685656497556025,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2023-04-02 09:00:00+00:00",
|
||||||
|
"test_end": "2024-03-02 05:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 2,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.04410712874184496,
|
||||||
|
"dsr": 4.2725586842847596e-14,
|
||||||
|
"dsr_pvalue": 0.9999999999999573,
|
||||||
|
"return": 0.004410420254631564,
|
||||||
|
"max_dd": 0.01996463311196068,
|
||||||
|
"n_trades": 2,
|
||||||
|
"test_start": "2024-03-02 06:00:00+00:00",
|
||||||
|
"test_end": "2025-01-31 02:55:00+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fold": 3,
|
||||||
|
"fitness": 0.0,
|
||||||
|
"sharpe": 0.46456569507517853,
|
||||||
|
"dsr": 9.733950727895419e-26,
|
||||||
|
"dsr_pvalue": 1.0,
|
||||||
|
"return": 0.056366295538783584,
|
||||||
|
"max_dd": 0.005792329453230141,
|
||||||
|
"n_trades": 1,
|
||||||
|
"test_start": "2025-01-31 03:00:00+00:00",
|
||||||
|
"test_end": "2025-12-31 23:55:00+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"fitness_oos_mean": 0.05416305839903285,
|
||||||
|
"fitness_oos_min": 0.0,
|
||||||
|
"fitness_oos_max": 0.2166522335961314,
|
||||||
|
"fitness_oos_std": 0.09381316904044511,
|
||||||
|
"sharpe_oos_mean": 0.2992452086678593,
|
||||||
|
"sharpe_oos_min": 0.04410712874184496,
|
||||||
|
"robust_score": 0.0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user