{
  "non_promoting": true,
  "variants": {
    "baseline": {
      "policy": {
        "macro_memory": 0,
        "exit_cooldown": 0,
        "min_hold": 0
      },
      "macro": false
    },
    "macro_now": {
      "policy": {
        "macro_memory": 0,
        "exit_cooldown": 0,
        "min_hold": 0
      },
      "macro": true
    },
    "macro_memory_4": {
      "policy": {
        "macro_memory": 4,
        "exit_cooldown": 0,
        "min_hold": 0
      },
      "macro": true
    },
    "macro_memory_12": {
      "policy": {
        "macro_memory": 12,
        "exit_cooldown": 0,
        "min_hold": 0
      },
      "macro": true
    },
    "cooldown_4": {
      "policy": {
        "macro_memory": 0,
        "exit_cooldown": 4,
        "min_hold": 0
      },
      "macro": false
    },
    "cooldown_12": {
      "policy": {
        "macro_memory": 0,
        "exit_cooldown": 12,
        "min_hold": 0
      },
      "macro": false
    },
    "hold_4": {
      "policy": {
        "macro_memory": 0,
        "exit_cooldown": 0,
        "min_hold": 4
      },
      "macro": false
    },
    "hold_12": {
      "policy": {
        "macro_memory": 0,
        "exit_cooldown": 0,
        "min_hold": 12
      },
      "macro": false
    },
    "combined_4": {
      "policy": {
        "macro_memory": 4,
        "exit_cooldown": 4,
        "min_hold": 4
      },
      "macro": true
    }
  },
  "inputs": [
    {
      "tf": "4H",
      "data": "data/mlp/COINBASE_BTCUSD, 240.csv",
      "data_sha256": "edab76e18b7c03978b5b93930a36e6c8b870501c7944218171285dfc10c31bcb",
      "winner_sha256": "0c1a3d5acf8409d047c58d4fca4c2e32c8d6ef950fe95cebb540b34222a97aab",
      "weights_sha256": "81bdd437f7ebcaf5daa302eed574663e8070bd5e009d5e5894ad8ce5a6ec73e5",
      "first": "2017-10-07 16:00:00",
      "last": "2026-08-21 12:00:00",
      "warnings": [
        "first bar 2017-10-07 is after TRAIN_START 2015-01-01 \u2014 indicator warm-up may be short",
        "2 time gaps > 1.5\u00d74H (largest 0 days 16:00:00)"
      ],
      "dropped_incomplete_tail": 1,
      "params": {
        "mlp_weights_file": "/Users/jameslopez/projects/TradingBot25/strategies/params/mlp/mlp_weights_COINBASE_BTCUSD_4H_bb50_seed3020.json",
        "i_long_entry_activation_threshold": -190.0,
        "i_long_exit_activation_threshold": 220.0,
        "i_long_exit_activation_confirmation_threshold": -240.0,
        "i_trailing_stop_threshold": 5.0,
        "i_use_long_exit_confirmation": true,
        "i_use_long_entry_confirmation": false,
        "i_regime_window": 0.0,
        "i_regime_entry_min_score": -1000.0,
        "i_mvrv_suppress_bear": false,
        "i_exit_score_window": 1.0,
        "i_entry_score_window": 1.0,
        "Total Trades": "58",
        "Total P&L %": "1601.931224736312",
        "Sharpe Ratio": "0.7203648614036993",
        "Sortino Ratio": "1.19293427736661",
        "Calmar Ratio": "0.31084077346344097",
        "P&L/DD Ratio": "84.41573607398236",
        "Max Drawdown %": "-18.97668964625709",
        "% In Market": "16.813375408293197",
        "OOS_Total Trades": "3",
        "OOS_Total P&L %": "-10.310475067380253",
        "OOS_Sortino Ratio": "-0.984960164737144",
        "OOS_Bear_Pct": "23.857142857142858",
        "_pine_time_start": "2017-12-01"
      }
    },
    {
      "tf": "6H",
      "data": "data/mlp/COINBASE_BTCUSD, 360.csv",
      "data_sha256": "63107cd6218cb61e3d54a4086f70e23991bdefb7cca482a52f7b1edbedaef1db",
      "winner_sha256": "98978113caa9eed79b452ed101742a0e308f0de31727ed3d12e7f653311e3d69",
      "weights_sha256": "91fa9223c87c489c24ec1d4711099c92fe331d189f660e7f080ee596c052763b",
      "first": "2017-10-15 12:00:00",
      "last": "2026-08-21 06:00:00",
      "warnings": [
        "first bar 2017-10-15 is after TRAIN_START 2015-01-01 \u2014 indicator warm-up may be short",
        "last bar 2026-08-21 is 31d behind now (stale export?)",
        "1 time gaps > 1.5\u00d76H (largest 0 days 12:00:00)"
      ],
      "dropped_incomplete_tail": 1,
      "params": {
        "mlp_weights_file": "/Users/jameslopez/projects/TradingBot25/strategies/params/mlp/mlp_weights_COINBASE_BTCUSD_6H_bb50_seed4942.json",
        "i_long_entry_activation_threshold": 90.0,
        "i_long_exit_activation_threshold": 210.0,
        "i_long_exit_activation_confirmation_threshold": -260.0,
        "i_trailing_stop_threshold": 20.0,
        "i_use_long_exit_confirmation": true,
        "i_use_long_entry_confirmation": false,
        "i_regime_window": 0.0,
        "i_regime_entry_min_score": -1000.0,
        "i_mvrv_suppress_bear": false,
        "i_exit_score_window": 1.0,
        "i_entry_score_window": 1.0,
        "Total Trades": "56",
        "Total P&L %": "13839.525308999227",
        "Sharpe Ratio": "0.904747028344909",
        "Sortino Ratio": "1.4375711397587503",
        "Calmar Ratio": "0.48279591737460154",
        "P&L/DD Ratio": "413.67134186624116",
        "Max Drawdown %": "-33.45536397702449",
        "% In Market": "42.834606443042176",
        "OOS_Total Trades": "0",
        "OOS_Total P&L %": "0.0",
        "OOS_Sortino Ratio": "0.0",
        "OOS_Bear_Pct": "61.24197002141327",
        "_pine_time_start": "2017-12-01"
      }
    },
    {
      "tf": "8H",
      "data": "data/mlp/COINBASE_BTCUSD, 480.csv",
      "data_sha256": "8e655306bfdf8b6afb60031a173aa6c9fad1a5a8a99a8f9c671fb317c047f234",
      "winner_sha256": "5566bc89e78bf575016e5342f48f872edb673b3b8c38c974a0c225cc08148bdb",
      "weights_sha256": "4884fc18fee697e9d54eac9d4de4bd9d0418ccbec7680a2dd12be61ce7830f38",
      "first": "2016-06-05 00:00:00",
      "last": "2026-08-21 08:00:00",
      "warnings": [
        "first bar 2016-06-05 is after TRAIN_START 2015-01-01 \u2014 indicator warm-up may be short",
        "1 time gaps > 1.5\u00d78H (largest 0 days 16:00:00)"
      ],
      "dropped_incomplete_tail": 1,
      "params": {
        "mlp_weights_file": "/Users/jameslopez/projects/TradingBot25/strategies/params/mlp/mlp_weights_COINBASE_BTCUSD_8H_bb50_seed3629.json",
        "i_long_entry_activation_threshold": -120.0,
        "i_long_exit_activation_threshold": 270.0,
        "i_long_exit_activation_confirmation_threshold": -90.0,
        "i_trailing_stop_threshold": 30.0,
        "i_use_long_exit_confirmation": true,
        "i_use_long_entry_confirmation": false,
        "i_regime_window": 0.0,
        "i_regime_entry_min_score": -1000.0,
        "i_mvrv_suppress_bear": false,
        "i_exit_score_window": 1.0,
        "i_entry_score_window": 1.0,
        "Total Trades": "62",
        "Total P&L %": "35649.624268207546",
        "Sharpe Ratio": "1.0980360090076824",
        "Sortino Ratio": "1.7304009044927935",
        "Calmar Ratio": "0.8343547563780891",
        "P&L/DD Ratio": "1108.3879812246614",
        "Max Drawdown %": "-32.16348866289416",
        "% In Market": "52.02036975534152",
        "OOS_Total Trades": "2",
        "OOS_Total P&L %": "-19.27973370204589",
        "OOS_Sortino Ratio": "-1.42466427534338",
        "OOS_Bear_Pct": "92.5925925925926",
        "_pine_time_start": "2017-12-01"
      }
    },
    {
      "tf": "12H",
      "data": "data/mlp/COINBASE_BTCUSD, 720.csv",
      "data_sha256": "96e51a96b0998131daf1fe8f38db6790a89a39a9c478795afaac236c854761a1",
      "winner_sha256": "995f8d0b79826631ed8f3c49c3c90b72737bce5499393455addb26e569c4b02b",
      "weights_sha256": "34b49d9de0d714715beb822c6a4f6ce333ce7b1af79054add5be90dabf3ca81e",
      "first": "2014-12-01 00:00:00",
      "last": "2026-06-25 00:00:00",
      "warnings": [
        "last bar 2026-06-25 is 88d behind now (stale export?)",
        "12 time gaps > 1.5\u00d712H (largest 20 days 12:00:00)"
      ],
      "dropped_incomplete_tail": 1,
      "params": {
        "mlp_weights_file": "/Users/jameslopez/projects/TradingBot25/strategies/params/mlp/mlp_weights_COINBASE_BTCUSD_12H_bb50_seed3528.json",
        "i_long_entry_activation_threshold": -190.0,
        "i_long_exit_activation_threshold": -60.0,
        "i_long_exit_activation_confirmation_threshold": -300.0,
        "i_trailing_stop_threshold": 10.0,
        "i_use_long_exit_confirmation": true,
        "i_use_long_entry_confirmation": false,
        "i_regime_window": 0.0,
        "i_regime_entry_min_score": -1000.0,
        "i_mvrv_suppress_bear": false,
        "i_exit_score_window": 4.0,
        "i_entry_score_window": 1.0,
        "Total Trades": "139",
        "Total P&L %": "9447.745011520346",
        "Sharpe Ratio": "1.177597816259789",
        "Sortino Ratio": "1.9199582707654672",
        "Calmar Ratio": "0.8737707248100931",
        "P&L/DD Ratio": "259.22320102129146",
        "Max Drawdown %": "-36.4463712132941",
        "% In Market": "39.465382699651336",
        "OOS_Total Trades": "3",
        "OOS_Total P&L %": "-12.19262811532895",
        "OOS_Sortino Ratio": "-1.796458402343245",
        "OOS_Bear_Pct": "95.2991452991453",
        "_pine_time_start": "2017-12-01"
      }
    },
    {
      "tf": "1D",
      "data": "data/mlp/COINBASE_BTCUSD, 1D.csv",
      "data_sha256": "f0942010c098346dff453b7470ba0025f3125a522f104c0c56dd27911648a81b",
      "winner_sha256": "d1b3edccb9ac5e8ab6606c78b92bf970f8b531ddcfa7c969e485acf5092bbedf",
      "weights_sha256": "89680241aa1a0a33464386eb5ec316bcfa62e8d88b508fbaa9ec317b7bad9310",
      "first": "2014-12-01 00:00:00",
      "last": "2026-06-24 00:00:00",
      "warnings": [
        "last bar 2026-06-25 is 88d behind now (stale export?)",
        "8 time gaps > 1.5\u00d71D (largest 21 days 00:00:00)",
        "2 bars move >50% in one bar (worst 70% at 2015-01-15) \u2014 verify not a price glitch"
      ],
      "dropped_incomplete_tail": 1,
      "params": {
        "mlp_weights_file": "/Users/jameslopez/projects/TradingBot25/strategies/params/mlp/mlp_weights_COINBASE_BTCUSD_1D_bb50_seed2727.json",
        "i_long_entry_activation_threshold": -25.0,
        "i_long_exit_activation_threshold": 70.0,
        "i_long_exit_activation_confirmation_threshold": -180.0,
        "i_trailing_stop_threshold": 10.0,
        "i_use_long_exit_confirmation": true,
        "i_use_long_entry_confirmation": false,
        "i_regime_window": 0.0,
        "i_regime_entry_min_score": -1000.0,
        "i_mvrv_suppress_bear": false,
        "i_exit_score_window": 5.0,
        "i_entry_score_window": 1.0,
        "Total Trades": "152",
        "Total P&L %": "14828.226793602817",
        "Sharpe Ratio": "1.6531652379092092",
        "Sortino Ratio": "2.8233910543034137",
        "Calmar Ratio": "1.806628646427898",
        "P&L/DD Ratio": "0.0",
        "Max Drawdown %": "-46.21749413185906",
        "% In Market": "46.94555112881807",
        "OOS_Total Trades": "3",
        "OOS_Total P&L %": "-11.686288570153655",
        "OOS_Sortino Ratio": "-2.0191181989834415",
        "OOS_Bear_Pct": "99.14529914529916",
        "_pine_time_start": "2017-12-01"
      }
    }
  ],
  "code_sha256": {
    "strategies/mlp_state_policy.py": "1fe6e7019259719e7a99e7c8f39a04daa3cae04cfa9000a34031443c5457caa3",
    "strategies/strategy_mlp_scores.py": "0fb49232d3a5fe2878875b26104bee31098c8dd0902321853f7d2d1d3dfd8f3d",
    "strategies/strategy_activation_scores.py": "f8efc09fa67aa120e7980ad50731c70058065f885cc3bc207f993f51b550fcc0",
    "strategies/library_activation_scores.py": "13ade8ebc5d635e2bd256caee9fb845321268050c508f44fdba5692ee8e01eff",
    "strategies/mlp_temporal_features.py": "62779a1752356c022488099bd4934aae92996ddbdfdc58eb79f676771e6466b5",
    "tools/validate_chart_data.py": "4886b165161778eb27640172e768fe9aa7e1f1570de156e0abced3271307616b",
    "tools/run_mlp_score_structure_experiment.py": "d954d6b63c29aa868712418cd2ff2005f530f50cd2d9ef618d3fd6474caf6bbb",
    "tools/run_mlp_state_policy_experiment.py": "87217bd1dcf56ccc369acc6071819ebab2b432d15dc1725e577ba942d6992964",
    "config.py": "2ad84bcf3427ec07afe436c54a8557245aabf72feb3e099c7b28fba86c1a72e0"
  }
}