{
  "kind": "backtest",
  "description": "Range length 14 and entry level 20 stay fixed. Change only the smoothing of K in the threshold-recovery rule.",
  "precision": 0,
  "source": {
    "label": "Recorded TrainBard fixed-quote activity controls",
    "note": "Representative BTCUSDT two-hour 2021\u20132023 sample. Every buy or sell is one execution. Script requests 100 quote units per entry via 100 divided by the signal close, with 500 startup bars and 0.1% cost. No local fills are generated. All eight frame curves and exact source mappings remain in replications and the evidence download."
  },
  "x": [
    "1",
    "2",
    "3",
    "4",
    "5",
    "6",
    "7",
    "8"
  ],
  "xLabels": [
    "1 bars",
    "2 bars",
    "3 bars",
    "4 bars",
    "5 bars",
    "6 bars",
    "7 bars",
    "8 bars"
  ],
  "panels": [
    {
      "label": "Recovery-rule executions",
      "domain": [
        0,
        600
      ],
      "series": [
        {
          "id": "recovery",
          "label": "K smoothing",
          "color": "blue",
          "values": [
            588,
            475,
            371,
            309,
            269,
            239,
            195,
            169
          ]
        }
      ]
    }
  ],
  "replications": [
    {
      "family": "stochastic-recovery",
      "frame": {
        "exchange": "binance",
        "symbol": "BTCUSDT",
        "timeframe": "2h",
        "start": "2021-01-01",
        "end": "2023-12-31",
        "starting_amount": 10000,
        "trading_fee_percent": 0.1
      },
      "batch_id": "10c4dd33-52e1-4af6-9744-294b4db74796",
      "source": {
        "interface": "MCP",
        "batch_id": "10c4dd33-52e1-4af6-9744-294b4db74796",
        "raw_result": "stochastic/raw/fixed100-stochastic-recovery-v2-btcusdt-2h-early/complete-result.json",
        "request": "stochastic/requests/fixed100-stochastic-recovery-v2-btcusdt-2h-early.json",
        "request_sha256": "a1518ddc143f386547033de9fcd174bca3f0245cd40866256c96b4ad01ebb1f2",
        "result_sha256": "873e6f3f08391fffb40bb160d39219206aafe75fa166a211b701f267f1285a2d",
        "source_sha256": "79fa51a324bdcce7663c3bc3afd8050e4206d181c73772803a64f3e4c7487125"
      },
      "points": [
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 7
          },
          "totalTrades": 195,
          "totalReturn": 0.48237085342407227,
          "maxDrawdownPct": 0.7371982932090759,
          "winRate": 67.01030731201172,
          "totalFees": 19.569156646728516,
          "source_row_index": 0
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 8
          },
          "totalTrades": 169,
          "totalReturn": 0.4015183746814728,
          "maxDrawdownPct": 0.7290288209915161,
          "winRate": 69.04762268066406,
          "totalFees": 16.958396911621094,
          "source_row_index": 1
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 6
          },
          "totalTrades": 239,
          "totalReturn": 0.2984808683395386,
          "maxDrawdownPct": 0.698861837387085,
          "winRate": 68.90756225585938,
          "totalFees": 23.955148696899414,
          "source_row_index": 2
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 5
          },
          "totalTrades": 269,
          "totalReturn": -0.10284363478422165,
          "maxDrawdownPct": 0.8026441335678101,
          "winRate": 63.43283462524414,
          "totalFees": 26.917804718017578,
          "source_row_index": 3
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 2
          },
          "totalTrades": 475,
          "totalReturn": -0.140707328915596,
          "maxDrawdownPct": 0.5940393805503845,
          "winRate": 65.40084075927734,
          "totalFees": 47.534542083740234,
          "source_row_index": 4
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 3
          },
          "totalTrades": 371,
          "totalReturn": -0.19173599779605865,
          "maxDrawdownPct": 0.6089727282524109,
          "winRate": 60.5405387878418,
          "totalFees": 37.119075775146484,
          "source_row_index": 5
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 1
          },
          "totalTrades": 588,
          "totalReturn": -0.2958407402038574,
          "maxDrawdownPct": 0.6478416919708252,
          "winRate": 66.32653045654297,
          "totalFees": 58.82944869995117,
          "source_row_index": 6
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 4
          },
          "totalTrades": 309,
          "totalReturn": -0.5955407023429871,
          "maxDrawdownPct": 0.9039657115936279,
          "winRate": 59.09090805053711,
          "totalFees": 30.87261962890625,
          "source_row_index": 7
        }
      ]
    },
    {
      "family": "stochastic-recovery",
      "frame": {
        "exchange": "binance",
        "symbol": "BTCUSDT",
        "timeframe": "2h",
        "start": "2024-01-01",
        "end": "2025-12-31",
        "starting_amount": 10000,
        "trading_fee_percent": 0.1
      },
      "batch_id": "51f221de-0836-479b-a030-ee0d161304ae",
      "source": {
        "interface": "MCP",
        "batch_id": "51f221de-0836-479b-a030-ee0d161304ae",
        "raw_result": "stochastic/raw/fixed100-stochastic-recovery-v2-btcusdt-2h-later/complete-result.json",
        "request": "stochastic/requests/fixed100-stochastic-recovery-v2-btcusdt-2h-later.json",
        "request_sha256": "3ce661396ae4869183961d769979bd8bda43ea50c788371d1fa0dbf8ac082e01",
        "result_sha256": "445ca94644b3d670ac95f54df66813ff36b45a7d5b059092406bd50d8a7f6310",
        "source_sha256": "79fa51a324bdcce7663c3bc3afd8050e4206d181c73772803a64f3e4c7487125"
      },
      "points": [
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 5
          },
          "totalTrades": 215,
          "totalReturn": -0.04508548602461815,
          "maxDrawdownPct": 0.4571753442287445,
          "winRate": 66.35514068603516,
          "totalFees": 21.515504837036133,
          "source_row_index": 0
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 2
          },
          "totalTrades": 324,
          "totalReturn": -0.051700372248888016,
          "maxDrawdownPct": 0.45014920830726624,
          "winRate": 62.96296310424805,
          "totalFees": 32.42725372314453,
          "source_row_index": 1
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 1
          },
          "totalTrades": 394,
          "totalReturn": -0.14136675000190735,
          "maxDrawdownPct": 0.4512721300125122,
          "winRate": 63.451778411865234,
          "totalFees": 39.42527770996094,
          "source_row_index": 2
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 7
          },
          "totalTrades": 155,
          "totalReturn": -0.17117741703987122,
          "maxDrawdownPct": 0.4231785833835602,
          "winRate": 59.74026107788086,
          "totalFees": 15.502918243408203,
          "source_row_index": 3
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 4
          },
          "totalTrades": 239,
          "totalReturn": -0.22333692014217377,
          "maxDrawdownPct": 0.4520770013332367,
          "winRate": 63.86554718017578,
          "totalFees": 23.900100708007812,
          "source_row_index": 4
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 6
          },
          "totalTrades": 181,
          "totalReturn": -0.254304438829422,
          "maxDrawdownPct": 0.4979720711708069,
          "winRate": 63.33333206176758,
          "totalFees": 18.097200393676758,
          "source_row_index": 5
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 8
          },
          "totalTrades": 131,
          "totalReturn": -0.3033653795719147,
          "maxDrawdownPct": 0.46089285612106323,
          "winRate": 61.53845977783203,
          "totalFees": 13.08728313446045,
          "source_row_index": 6
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 3
          },
          "totalTrades": 274,
          "totalReturn": -0.32789236307144165,
          "maxDrawdownPct": 0.4970572888851166,
          "winRate": 62.77372360229492,
          "totalFees": 27.394607543945312,
          "source_row_index": 7
        }
      ]
    },
    {
      "family": "stochastic-recovery",
      "frame": {
        "exchange": "binance",
        "symbol": "BTCUSDT",
        "timeframe": "4h",
        "start": "2021-01-01",
        "end": "2023-12-31",
        "starting_amount": 10000,
        "trading_fee_percent": 0.1
      },
      "batch_id": null,
      "source": {
        "interface": "UI",
        "ui_job": "UI-REMAIN-stochastic-recovery-control-btcusdt-early-4h",
        "raw_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-btcusdt-early-4h/export.compact.json",
        "completion": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-btcusdt-early-4h/completion.json",
        "normalized_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-btcusdt-early-4h/normalized-ui.json",
        "request": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-btcusdt-early-4h/completion.json",
        "request_sha256": "bd49233ac426abd54229e18ef78a41fc9120cbc46031cf9cb1cf99f1abb7849f",
        "result_sha256": "389fc72c52c9816339ba09fceea67b67e7d59efd28bd5c5ddd1cdc98f64fd5c6",
        "normalized_sha256": "ae287c5215ad5cb5187786d568d4bb09fa33c1c58062c87a9537d7925fa567f7",
        "source_sha256": "79fa51a324bdcce7663c3bc3afd8050e4206d181c73772803a64f3e4c7487125",
        "ui_counts": {
          "requested": 8,
          "structural_invalid": 0,
          "accepted_valid": 8,
          "observed_metric_rows": 8,
          "traded_rows": 8,
          "explicit_zero_rows": 0,
          "reconciled_omitted_zero_tuples": 0,
          "inclusion": "unique"
        }
      },
      "points": [
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 8
          },
          "totalTrades": 92,
          "totalReturn": 0.8683292865753174,
          "maxDrawdownPct": 0.34922245144844055,
          "winRate": 60.869564056396484,
          "totalFees": 9.296101570129395,
          "source_row_index": 0
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 7
          },
          "totalTrades": 106,
          "totalReturn": 0.7638922929763794,
          "maxDrawdownPct": 0.5200163722038269,
          "winRate": 66.03773498535156,
          "totalFees": 10.687010765075684,
          "source_row_index": 1
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 6
          },
          "totalTrades": 122,
          "totalReturn": 0.6136736273765564,
          "maxDrawdownPct": 0.430405855178833,
          "winRate": 70.49180603027344,
          "totalFees": 12.273564338684082,
          "source_row_index": 2
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 3
          },
          "totalTrades": 202,
          "totalReturn": 0.5402593612670898,
          "maxDrawdownPct": 0.5579089522361755,
          "winRate": 72.27722930908203,
          "totalFees": 20.274320602416992,
          "source_row_index": 3
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 5
          },
          "totalTrades": 154,
          "totalReturn": 0.4533969759941101,
          "maxDrawdownPct": 0.40456387400627136,
          "winRate": 74.02597045898438,
          "totalFees": 15.46072006225586,
          "source_row_index": 4
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 2
          },
          "totalTrades": 243,
          "totalReturn": 0.38121408224105835,
          "maxDrawdownPct": 0.6011611819267273,
          "winRate": 68.59503936767578,
          "totalFees": 24.362436294555664,
          "source_row_index": 5
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 4
          },
          "totalTrades": 172,
          "totalReturn": 0.35840579867362976,
          "maxDrawdownPct": 0.5625349879264832,
          "winRate": 79.06977081298828,
          "totalFees": 17.25305938720703,
          "source_row_index": 6
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 1
          },
          "totalTrades": 285,
          "totalReturn": 0.1655382663011551,
          "maxDrawdownPct": 0.7826071977615356,
          "winRate": 71.12676239013672,
          "totalFees": 28.546924591064453,
          "source_row_index": 7
        }
      ]
    },
    {
      "family": "stochastic-recovery",
      "frame": {
        "exchange": "binance",
        "symbol": "BTCUSDT",
        "timeframe": "4h",
        "start": "2024-01-01",
        "end": "2025-12-31",
        "starting_amount": 10000,
        "trading_fee_percent": 0.1
      },
      "batch_id": null,
      "source": {
        "interface": "UI",
        "ui_job": "UI-REMAIN-stochastic-recovery-control-btcusdt-later-4h",
        "raw_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-btcusdt-later-4h/export.compact.json",
        "completion": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-btcusdt-later-4h/completion.json",
        "normalized_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-btcusdt-later-4h/normalized-ui.json",
        "request": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-btcusdt-later-4h/completion.json",
        "request_sha256": "e3c279837dba46d4b464548c176330c4995ca4fbf33820b35b13ade4af3be596",
        "result_sha256": "2ccc4b4ee1b53f25cfe5606c4d270b5ebe79a8f0e3d047eaaf20fa7f92a8b593",
        "normalized_sha256": "d822a3cc5214bd6548cc3a757fe2e0b9941ea549ba8eb36149f0615fc6651996",
        "source_sha256": "79fa51a324bdcce7663c3bc3afd8050e4206d181c73772803a64f3e4c7487125",
        "ui_counts": {
          "requested": 8,
          "structural_invalid": 0,
          "accepted_valid": 8,
          "observed_metric_rows": 8,
          "traded_rows": 8,
          "explicit_zero_rows": 0,
          "reconciled_omitted_zero_tuples": 0,
          "inclusion": "unique"
        }
      },
      "points": [
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 8
          },
          "totalTrades": 77,
          "totalReturn": 0.34226542711257935,
          "maxDrawdownPct": 0.21738366782665253,
          "winRate": 65.78947448730469,
          "totalFees": 7.742898464202881,
          "source_row_index": 0
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 7
          },
          "totalTrades": 87,
          "totalReturn": 0.2217177152633667,
          "maxDrawdownPct": 0.31230059266090393,
          "winRate": 67.44186401367188,
          "totalFees": 8.731837272644043,
          "source_row_index": 1
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 5
          },
          "totalTrades": 109,
          "totalReturn": 0.18841853737831116,
          "maxDrawdownPct": 0.2886492908000946,
          "winRate": 66.66666412353516,
          "totalFees": 10.934165000915527,
          "source_row_index": 2
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 6
          },
          "totalTrades": 95,
          "totalReturn": 0.16627827286720276,
          "maxDrawdownPct": 0.2847292423248291,
          "winRate": 61.70212936401367,
          "totalFees": 9.52708911895752,
          "source_row_index": 3
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 2
          },
          "totalTrades": 155,
          "totalReturn": -0.07788654416799545,
          "maxDrawdownPct": 0.37474554777145386,
          "winRate": 63.6363639831543,
          "totalFees": 15.506477355957031,
          "source_row_index": 4
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 4
          },
          "totalTrades": 117,
          "totalReturn": -0.09686815738677979,
          "maxDrawdownPct": 0.37088543176651,
          "winRate": 63.7931022644043,
          "totalFees": 11.706412315368652,
          "source_row_index": 5
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 3
          },
          "totalTrades": 131,
          "totalReturn": -0.17780166864395142,
          "maxDrawdownPct": 0.3463591933250427,
          "winRate": 61.53845977783203,
          "totalFees": 13.094693183898926,
          "source_row_index": 6
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 1
          },
          "totalTrades": 179,
          "totalReturn": -0.4190995693206787,
          "maxDrawdownPct": 0.5709994435310364,
          "winRate": 56.17977523803711,
          "totalFees": 17.87510108947754,
          "source_row_index": 7
        }
      ]
    },
    {
      "family": "stochastic-recovery",
      "frame": {
        "exchange": "binance",
        "symbol": "ETHUSDT",
        "timeframe": "2h",
        "start": "2021-01-01",
        "end": "2023-12-31",
        "starting_amount": 10000,
        "trading_fee_percent": 0.1
      },
      "batch_id": null,
      "source": {
        "interface": "UI",
        "ui_job": "UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h",
        "raw_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h/export.compact.json",
        "completion": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h/completion.json",
        "normalized_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h/normalized-ui.json",
        "request": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h/completion.json",
        "request_sha256": "b299d6398bf86915ae7a20c1c93959844ffd3cafa575f17b352951c739a11fe7",
        "result_sha256": "5040c4bdcabbd9537e16111217ccfd95845efd72b3587d9cfe287db112b7d92e",
        "normalized_sha256": "edd96788d7977d6520c7ccf9113b9c37937d5ba6bb99ef9d2b8c5adeb158a73e",
        "source_sha256": "79fa51a324bdcce7663c3bc3afd8050e4206d181c73772803a64f3e4c7487125",
        "ui_counts": {
          "requested": 8,
          "structural_invalid": 0,
          "accepted_valid": 8,
          "observed_metric_rows": 8,
          "traded_rows": 8,
          "explicit_zero_rows": 0,
          "reconciled_omitted_zero_tuples": 0,
          "inclusion": "unique"
        }
      },
      "points": [
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 5
          },
          "totalTrades": 285,
          "totalReturn": 0.5995057225227356,
          "maxDrawdownPct": 0.6932547092437744,
          "winRate": 68.30986022949219,
          "totalFees": 28.591575622558594,
          "source_row_index": 1
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 3
          },
          "totalTrades": 405,
          "totalReturn": 0.5472008585929871,
          "maxDrawdownPct": 0.6983981728553772,
          "winRate": 68.31683349609375,
          "totalFees": 40.59805679321289,
          "source_row_index": 3
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 2
          },
          "totalTrades": 497,
          "totalReturn": 0.5310208201408386,
          "maxDrawdownPct": 0.5773258805274963,
          "winRate": 66.93548583984375,
          "totalFees": 49.80535125732422,
          "source_row_index": 4
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 1
          },
          "totalTrades": 595,
          "totalReturn": 0.46484601497650146,
          "maxDrawdownPct": 0.5552860498428345,
          "winRate": 68.6868667602539,
          "totalFees": 59.60846710205078,
          "source_row_index": 5
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 4
          },
          "totalTrades": 337,
          "totalReturn": 0.405004620552063,
          "maxDrawdownPct": 0.8132924437522888,
          "winRate": 67.26190185546875,
          "totalFees": 33.777191162109375,
          "source_row_index": 7
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 6
          },
          "totalTrades": 242,
          "totalReturn": 0.3835065960884094,
          "maxDrawdownPct": 0.6792916059494019,
          "winRate": 66.94214630126953,
          "totalFees": 24.26262664794922,
          "source_row_index": 8
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 8
          },
          "totalTrades": 190,
          "totalReturn": 0.295779287815094,
          "maxDrawdownPct": 0.8351682424545288,
          "winRate": 71.57894897460938,
          "totalFees": 19.048606872558594,
          "source_row_index": 11
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 7
          },
          "totalTrades": 216,
          "totalReturn": 0.18475334346294403,
          "maxDrawdownPct": 0.8307985663414001,
          "winRate": 69.44444274902344,
          "totalFees": 21.640121459960938,
          "source_row_index": 13
        }
      ]
    },
    {
      "family": "stochastic-recovery",
      "frame": {
        "exchange": "binance",
        "symbol": "ETHUSDT",
        "timeframe": "2h",
        "start": "2024-01-01",
        "end": "2025-12-31",
        "starting_amount": 10000,
        "trading_fee_percent": 0.1
      },
      "batch_id": null,
      "source": {
        "interface": "UI",
        "ui_job": "UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h",
        "raw_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h/export.compact.json",
        "completion": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h/completion.json",
        "normalized_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h/normalized-ui.json",
        "request": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h/completion.json",
        "request_sha256": "2b065eff4255375ebb71990a69e1d806f3ad52c2239ef834db8bf7dafe399395",
        "result_sha256": "3911ad819b6eb5d4110248bde77acda29bfd537fb3da351ce1823ee7f588cd41",
        "normalized_sha256": "e77af28373e4dacb74a1608ed0f307331bcf4951bba241d857d34bb4d564b6e5",
        "source_sha256": "79fa51a324bdcce7663c3bc3afd8050e4206d181c73772803a64f3e4c7487125",
        "ui_counts": {
          "requested": 8,
          "structural_invalid": 0,
          "accepted_valid": 8,
          "observed_metric_rows": 8,
          "traded_rows": 8,
          "explicit_zero_rows": 0,
          "reconciled_omitted_zero_tuples": 0,
          "inclusion": "unique"
        }
      },
      "points": [
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 5
          },
          "totalTrades": 207,
          "totalReturn": 0.2922810912132263,
          "maxDrawdownPct": 0.6012355089187622,
          "winRate": 66.01941680908203,
          "totalFees": 20.748682022094727,
          "source_row_index": 3
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 3
          },
          "totalTrades": 261,
          "totalReturn": 0.2287600338459015,
          "maxDrawdownPct": 0.6507449746131897,
          "winRate": 68.46154022216797,
          "totalFees": 26.14811134338379,
          "source_row_index": 5
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 4
          },
          "totalTrades": 221,
          "totalReturn": 0.2144840806722641,
          "maxDrawdownPct": 0.5832359194755554,
          "winRate": 63.6363639831543,
          "totalFees": 22.14266014099121,
          "source_row_index": 6
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 6
          },
          "totalTrades": 181,
          "totalReturn": 0.1955823302268982,
          "maxDrawdownPct": 0.6729843020439148,
          "winRate": 70,
          "totalFees": 18.13751983642578,
          "source_row_index": 9
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 7
          },
          "totalTrades": 155,
          "totalReturn": -0.001349464408122003,
          "maxDrawdownPct": 0.7021462321281433,
          "winRate": 67.532470703125,
          "totalFees": 15.515204429626465,
          "source_row_index": 11
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 8
          },
          "totalTrades": 137,
          "totalReturn": -0.046823177486658096,
          "maxDrawdownPct": 0.6921636462211609,
          "winRate": 66.17646789550781,
          "totalFees": 13.708845138549805,
          "source_row_index": 12
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 2
          },
          "totalTrades": 328,
          "totalReturn": -0.09920308738946915,
          "maxDrawdownPct": 0.5912315845489502,
          "winRate": 70.1219482421875,
          "totalFees": 32.82292556762695,
          "source_row_index": 13
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 1
          },
          "totalTrades": 394,
          "totalReturn": -0.4702008366584778,
          "maxDrawdownPct": 0.7679614424705505,
          "winRate": 68.52791595458984,
          "totalFees": 39.392295837402344,
          "source_row_index": 15
        }
      ]
    },
    {
      "family": "stochastic-recovery",
      "frame": {
        "exchange": "binance",
        "symbol": "ETHUSDT",
        "timeframe": "4h",
        "start": "2021-01-01",
        "end": "2023-12-31",
        "starting_amount": 10000,
        "trading_fee_percent": 0.1
      },
      "batch_id": null,
      "source": {
        "interface": "UI",
        "ui_job": "UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h",
        "raw_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h/export.compact.json",
        "completion": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h/completion.json",
        "normalized_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h/normalized-ui.json",
        "request": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-early-2h-4h/completion.json",
        "request_sha256": "b299d6398bf86915ae7a20c1c93959844ffd3cafa575f17b352951c739a11fe7",
        "result_sha256": "5040c4bdcabbd9537e16111217ccfd95845efd72b3587d9cfe287db112b7d92e",
        "normalized_sha256": "edd96788d7977d6520c7ccf9113b9c37937d5ba6bb99ef9d2b8c5adeb158a73e",
        "source_sha256": "79fa51a324bdcce7663c3bc3afd8050e4206d181c73772803a64f3e4c7487125",
        "ui_counts": {
          "requested": 8,
          "structural_invalid": 0,
          "accepted_valid": 8,
          "observed_metric_rows": 8,
          "traded_rows": 8,
          "explicit_zero_rows": 0,
          "reconciled_omitted_zero_tuples": 0,
          "inclusion": "unique"
        }
      },
      "points": [
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 2
          },
          "totalTrades": 244,
          "totalReturn": 0.6707760095596313,
          "maxDrawdownPct": 0.7230610251426697,
          "winRate": 71.31147766113281,
          "totalFees": 24.491422653198242,
          "source_row_index": 0
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 7
          },
          "totalTrades": 108,
          "totalReturn": 0.595836341381073,
          "maxDrawdownPct": 0.7043984532356262,
          "winRate": 64.81481170654297,
          "totalFees": 10.870417594909668,
          "source_row_index": 2
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 8
          },
          "totalTrades": 88,
          "totalReturn": 0.4643567204475403,
          "maxDrawdownPct": 0.8248849511146545,
          "winRate": 61.3636360168457,
          "totalFees": 8.855267524719238,
          "source_row_index": 6
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 5
          },
          "totalTrades": 138,
          "totalReturn": 0.31939896941185,
          "maxDrawdownPct": 0.46528834104537964,
          "winRate": 68.1159439086914,
          "totalFees": 13.845724105834961,
          "source_row_index": 9
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 6
          },
          "totalTrades": 122,
          "totalReturn": 0.31533730030059814,
          "maxDrawdownPct": 0.5673189163208008,
          "winRate": 65.57376861572266,
          "totalFees": 12.243725776672363,
          "source_row_index": 10
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 1
          },
          "totalTrades": 297,
          "totalReturn": 0.19977621734142303,
          "maxDrawdownPct": 0.9196682572364807,
          "winRate": 68.9189224243164,
          "totalFees": 29.75099754333496,
          "source_row_index": 12
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 3
          },
          "totalTrades": 194,
          "totalReturn": 0.13687841594219208,
          "maxDrawdownPct": 0.8640516400337219,
          "winRate": 67.01030731201172,
          "totalFees": 19.4329833984375,
          "source_row_index": 14
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 4
          },
          "totalTrades": 156,
          "totalReturn": -0.31791287660598755,
          "maxDrawdownPct": 0.8594738841056824,
          "winRate": 61.53845977783203,
          "totalFees": 15.583806991577148,
          "source_row_index": 15
        }
      ]
    },
    {
      "family": "stochastic-recovery",
      "frame": {
        "exchange": "binance",
        "symbol": "ETHUSDT",
        "timeframe": "4h",
        "start": "2024-01-01",
        "end": "2025-12-31",
        "starting_amount": 10000,
        "trading_fee_percent": 0.1
      },
      "batch_id": null,
      "source": {
        "interface": "UI",
        "ui_job": "UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h",
        "raw_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h/export.compact.json",
        "completion": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h/completion.json",
        "normalized_result": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h/normalized-ui.json",
        "request": "stochastic/raw-ui/UI-REMAIN-stochastic-recovery-control-ethusdt-later-2h-4h/completion.json",
        "request_sha256": "2b065eff4255375ebb71990a69e1d806f3ad52c2239ef834db8bf7dafe399395",
        "result_sha256": "3911ad819b6eb5d4110248bde77acda29bfd537fb3da351ce1823ee7f588cd41",
        "normalized_sha256": "e77af28373e4dacb74a1608ed0f307331bcf4951bba241d857d34bb4d564b6e5",
        "source_sha256": "79fa51a324bdcce7663c3bc3afd8050e4206d181c73772803a64f3e4c7487125",
        "ui_counts": {
          "requested": 8,
          "structural_invalid": 0,
          "accepted_valid": 8,
          "observed_metric_rows": 8,
          "traded_rows": 8,
          "explicit_zero_rows": 0,
          "reconciled_omitted_zero_tuples": 0,
          "inclusion": "unique"
        }
      },
      "points": [
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 5
          },
          "totalTrades": 98,
          "totalReturn": 0.4562813639640808,
          "maxDrawdownPct": 0.4188896417617798,
          "winRate": 73.46939086914062,
          "totalFees": 9.855481147766113,
          "source_row_index": 0
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 6
          },
          "totalTrades": 80,
          "totalReturn": 0.35464945435523987,
          "maxDrawdownPct": 0.42499440908432007,
          "winRate": 72.5,
          "totalFees": 8.043511390686035,
          "source_row_index": 1
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 4
          },
          "totalTrades": 113,
          "totalReturn": 0.33048489689826965,
          "maxDrawdownPct": 0.4451942443847656,
          "winRate": 73.21428680419922,
          "totalFees": 11.344198226928711,
          "source_row_index": 2
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 7
          },
          "totalTrades": 74,
          "totalReturn": 0.25606441497802734,
          "maxDrawdownPct": 0.4317212402820587,
          "winRate": 64.8648681640625,
          "totalFees": 7.433045387268066,
          "source_row_index": 4
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 2
          },
          "totalTrades": 163,
          "totalReturn": 0.2133214771747589,
          "maxDrawdownPct": 0.4243965446949005,
          "winRate": 69.13580322265625,
          "totalFees": 16.337039947509766,
          "source_row_index": 7
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 8
          },
          "totalTrades": 66,
          "totalReturn": 0.20562592148780823,
          "maxDrawdownPct": 0.5022041201591492,
          "winRate": 60.60606002807617,
          "totalFees": 6.627193927764893,
          "source_row_index": 8
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 3
          },
          "totalTrades": 129,
          "totalReturn": 0.17812669277191162,
          "maxDrawdownPct": 0.4441026449203491,
          "winRate": 67.1875,
          "totalFees": 12.930107116699219,
          "source_row_index": 10
        },
        {
          "parameters": {
            "lower": 20,
            "length": 14,
            "smooth_k": 1
          },
          "totalTrades": 195,
          "totalReturn": -0.23590195178985596,
          "maxDrawdownPct": 0.5737232565879822,
          "winRate": 63.91752624511719,
          "totalFees": 19.495281219482422,
          "source_row_index": 14
        }
      ]
    }
  ],
  "annotations": []
}
