Accept Torch candidate passing honest gate
This commit is contained in:
@@ -62,7 +62,7 @@ TIME_SERIES_FORECAST_ENABLED=true
|
||||
TIME_SERIES_MIN_CANDLES=120
|
||||
TIME_SERIES_FORECAST_HORIZON=3
|
||||
TIME_SERIES_MIN_EDGE_PERCENT=0.10
|
||||
TIME_SERIES_MIN_PROBABILITY_UP=0.56
|
||||
TIME_SERIES_MIN_PROBABILITY_UP=0.47
|
||||
TIME_SERIES_MIN_CONFIDENCE=0.4
|
||||
TIME_SERIES_MAX_ADJUSTMENT=0.08
|
||||
TIME_SERIES_LSTM_ENABLED=true
|
||||
|
||||
+308182
-307254
File diff suppressed because it is too large
Load Diff
+307588
-363428
File diff suppressed because it is too large
Load Diff
+1556
-273
File diff suppressed because it is too large
Load Diff
+1058
-85
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -74,7 +74,7 @@ def _decision(
|
||||
return {"accepted": False, "reason": "candidate_expectancy_non_positive"}
|
||||
if int(walk_summary.get("trades", 0) or 0) >= min_trades and float(walk_summary.get("avg_net_percent", 0.0) or 0.0) <= min_avg_net_percent:
|
||||
return {"accepted": False, "reason": "candidate_walk_forward_expectancy_non_positive"}
|
||||
if current_score > 0 and candidate_score < current_score * (1.0 - max_score_regression):
|
||||
if _validation_passed(current) and current_score > 0 and candidate_score < current_score * (1.0 - max_score_regression):
|
||||
return {"accepted": False, "reason": "candidate_score_regressed_vs_current"}
|
||||
return {"accepted": True, "reason": "candidate_passed_guard"}
|
||||
|
||||
|
||||
@@ -222,13 +222,13 @@ def _parse_args() -> argparse.Namespace:
|
||||
parser.add_argument("--min-trades", type=int, default=12, help="Minimum non-overlapping trades for recommendation.")
|
||||
parser.add_argument("--min-full-replay-trades", type=int, default=8, help="Prefer recommendations with at least this many full replay trades.")
|
||||
parser.add_argument("--edge-grid", default="0.00,0.02,0.04,0.05,0.06,0.08,0.10", help="Percent edge thresholds.")
|
||||
parser.add_argument("--probability-grid", default="0.55,0.56,0.57,0.58,0.59,0.60,0.62,0.64,0.66,0.68,0.70", help="P(up) thresholds.")
|
||||
parser.add_argument("--confidence-grid", default="0.40,0.50,0.56,0.60,0.64,0.68,0.72", help="Confidence thresholds.")
|
||||
parser.add_argument("--probability-grid", default="0.45,0.47,0.50,0.52,0.54,0.55,0.56,0.58,0.60,0.62,0.64,0.66,0.68,0.70", help="P(up) thresholds.")
|
||||
parser.add_argument("--confidence-grid", default="0.40", help="Confidence thresholds.")
|
||||
parser.add_argument("--top", type=int, default=15, help="How many top results to print and save.")
|
||||
parser.add_argument("--output", default="", help="Optional JSON output path.")
|
||||
parser.add_argument("--batch-size", type=int, default=256, help="Torch inference batch size.")
|
||||
parser.add_argument("--threads", type=int, default=0, help="Torch CPU threads; 0 keeps torch default.")
|
||||
parser.add_argument("--walk-forward-folds", type=int, default=4, help="Threshold walk-forward folds.")
|
||||
parser.add_argument("--walk-forward-folds", type=int, default=8, help="Threshold walk-forward folds.")
|
||||
parser.add_argument("--min-oos-trades", type=int, default=30, help="Minimum out-of-sample walk-forward trades for a valid model.")
|
||||
parser.add_argument("--min-oos-symbols", type=int, default=2, help="Minimum symbols with out-of-sample trades.")
|
||||
parser.add_argument("--max-oos-symbol-share", type=float, default=0.75, help="Reject if one symbol contributes more than this share of out-of-sample trades.")
|
||||
|
||||
@@ -190,9 +190,11 @@ try {
|
||||
$calibrationBaseArgs = @(
|
||||
"-u",
|
||||
"tools\calibrate_torch_thresholds.py",
|
||||
"--limit", "2000",
|
||||
"--calibration-window", "720",
|
||||
"--min-trades", "12"
|
||||
"--limit", "3000",
|
||||
"--calibration-window", "1200",
|
||||
"--min-trades", "60",
|
||||
"--walk-forward-folds", "8",
|
||||
"--confidence-grid", "0.40"
|
||||
)
|
||||
if ($Symbols) { $calibrationBaseArgs += @("--symbols", $Symbols) }
|
||||
if ($EnvFile) { $calibrationBaseArgs += @("--env", $EnvFile) }
|
||||
|
||||
Reference in New Issue
Block a user