{
  "updated_bkk": "2026-10-29 04:49:27+0700",
  "title": "UP/Down Bet · 24/7 · cible 85%",
  "targets": {
    "precision_goal": 0.85,
    "capital": 500.0,
    "taker_fee": 0.0008,
    "timezone": "Asia/Bangkok"
  },
  "indicator": {
    "version": "v8",
    "status": {
      "updated_bkk": "2026-10-29 04:45:42+0700",
      "version": "v8",
      "pid": 10508,
      "state": "waiting_close",
      "pending": []
    },
    "version_override": {
      "name": "v8.2",
      "btc_ret3": 0.0016,
      "btc_ret3_rsi_hi": 75,
      "btc_ret3_rsi_lo": 25,
      "btc_fade_thr": 2.2,
      "btc_fade_rsi_hi": 80,
      "btc_fade_rsi_lo": 20,
      "btc_rsi_ext_hi": 90,
      "btc_rsi_ext_lo": 10,
      "gold_fade_thr": 2.2,
      "gold_rsi_hi": 75,
      "gold_rsi_lo": 25,
      "gold_hours": [
        8,
        15
      ],
      "require_book": true,
      "from": "v8.1",
      "reason": "prec=0.3902439024390244 n=41 <0.85"
    },
    "stats_updated_bkk": "2026-10-29 04:45:42+0700",
    "precision_table": {
      "BTC": {
        "n_predictions": 237,
        "n_signals": 25,
        "n_abstain": 212,
        "n_resolved": 25,
        "correct": 9,
        "wrong": 16,
        "precision": 0.36,
        "abstain_pct": 0.8945,
        "last_signal": {
          "ts_bkk": "2026-10-29 04:45:41+0700",
          "signal": "ABSTAIN",
          "score": 0.8373482057958832,
          "reason": "BTC v8 no setup",
          "close": 81219.9
        }
      },
      "GOLD": {
        "n_predictions": 179,
        "n_signals": 21,
        "n_abstain": 158,
        "n_resolved": 20,
        "correct": 10,
        "wrong": 10,
        "precision": 0.5,
        "abstain_pct": 0.8827,
        "last_signal": {
          "ts_bkk": "2026-10-29 04:45:42+0700",
          "signal": "ABSTAIN",
          "score": 0.0,
          "reason": "GOLD v8 hors session",
          "close": 4061.1
        }
      },
      "Combined": {
        "n_predictions": 416,
        "n_signals": 46,
        "n_abstain": 370,
        "n_resolved": 45,
        "correct": 19,
        "wrong": 26,
        "precision": 0.4222222222222222,
        "abstain_pct": 0.8894,
        "last_signal": {}
      }
    },
    "journal_last_20": [
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": -2.06929298106327,
        "confidence": 0.9405877182375828,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793218500000,
        "target_ts_ms": 1793218800000,
        "close": 81206.4,
        "rsi": 56.34044173648115,
        "ret_1": -0.0005218538612263656,
        "ret_3": -0.004627138442756476,
        "vol_z": -0.41479193863879804,
        "book_imb": -0.3083387201034261,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:20:03+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": -2.399149635818249,
        "confidence": 1.0905225612398757,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793218800000,
        "target_ts_ms": 1793219100000,
        "close": 81173.0,
        "rsi": 53.646127755793984,
        "ret_1": -0.0004112976317136849,
        "ret_3": -0.003589253842735618,
        "vol_z": -0.7121817938860119,
        "book_imb": 0.964805435132012,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:25:04+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793218800000,
        "target_ts_ms": 1793219100000,
        "close": 4058.3,
        "rsi": 60.5664488017434,
        "ret_1": -0.001181363983165496,
        "ret_3": -0.0018937530742744264,
        "vol_z": -0.9036056564218004,
        "book_imb": 0.16989759232105722,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:25:04+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": -2.2832864275607823,
        "confidence": 1.0378574666013294,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793219100000,
        "target_ts_ms": 1793219400000,
        "close": 81101.7,
        "rsi": 48.429918520552825,
        "ret_1": -0.0008783708868712861,
        "ret_3": -0.0018104882779807925,
        "vol_z": -0.31350703907178556,
        "book_imb": 0.3511522525567364,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:30:04+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.47153435613716876,
        "confidence": 0.21433379814674314,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793219400000,
        "target_ts_ms": 1793219700000,
        "close": 81163.7,
        "rsi": 51.302083333333336,
        "ret_1": 0.0007644722613706002,
        "ret_3": -0.0005258206249753356,
        "vol_z": 0.014282338252985475,
        "book_imb": 0.051839185145257566,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:35:04+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793219400000,
        "target_ts_ms": 1793219700000,
        "close": 4057.0,
        "rsi": 59.36329588014988,
        "ret_1": 0.0009622264439565002,
        "ret_3": -0.0015013167286062144,
        "vol_z": -0.4984659024880043,
        "book_imb": 0.47000909222244996,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:35:04+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": -2.0083987066339937,
        "confidence": 0.9129085026004932,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793219700000,
        "target_ts_ms": 1793220000000,
        "close": 81104.9,
        "rsi": 47.21962019926753,
        "ret_1": -0.0007244617975770315,
        "ret_3": -0.0008389489115839728,
        "vol_z": -0.6771478401499822,
        "book_imb": 0.8511662524240026,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:40:04+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793219700000,
        "target_ts_ms": 1793220000000,
        "close": 4058.7,
        "rsi": 57.8640776699029,
        "ret_1": 0.00041902883904358347,
        "ret_3": 9.856343789262406e-05,
        "vol_z": -0.8020513643076568,
        "book_imb": 0.5084967009692127,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:40:04+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": -0.9144770366518452,
        "confidence": 0.4156713801073517,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793220000000,
        "target_ts_ms": 1793220300000,
        "close": 81074.0,
        "rsi": 39.76115534160351,
        "ret_1": -0.0003809880784020963,
        "ret_3": -0.0003415464780639258,
        "vol_z": -0.3046768068540766,
        "book_imb": -0.7110954033175337,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:45:04+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793220000000,
        "target_ts_ms": 1793220300000,
        "close": 4064.2,
        "rsi": 58.82352941176456,
        "ret_1": 0.001355113706359179,
        "ret_3": 0.002738644494337645,
        "vol_z": -0.6381182849991243,
        "book_imb": 0.7510038811631664,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:45:04+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": -1.156814596429594,
        "confidence": 0.525824816319895,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793220300000,
        "target_ts_ms": 1793220600000,
        "close": 81047.3,
        "rsi": 41.77609181986224,
        "ret_1": -0.00032932876137845783,
        "ret_3": -0.001434138660509491,
        "vol_z": -0.1744848692836423,
        "book_imb": -0.8153167506010585,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:50:32+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793220300000,
        "target_ts_ms": 1793220600000,
        "close": 4064.9,
        "rsi": 65.63146997929607,
        "ret_1": 0.00017223561832593694,
        "ret_3": 0.001947251663791001,
        "vol_z": -0.2538056499215978,
        "book_imb": 0.2668399340899056,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:50:33+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 1.4893140817985677,
        "confidence": 0.6769609459643666,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793220600000,
        "target_ts_ms": 1793220900000,
        "close": 81169.4,
        "rsi": 44.19168375908966,
        "ret_1": 0.0015065276696446552,
        "ret_3": 0.0007952663772472441,
        "vol_z": -0.9006509728842168,
        "book_imb": 0.5419193794083386,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:55:04+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793220600000,
        "target_ts_ms": 1793220900000,
        "close": 4062.9,
        "rsi": 58.01354401805864,
        "ret_1": -0.0004920170237890231,
        "ret_3": 0.001034814103037986,
        "vol_z": -0.3583774139144251,
        "book_imb": -0.18365010128619177,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 03:55:04+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 3.372713542094782,
        "confidence": 1.533051609346241,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793220900000,
        "target_ts_ms": 1793221200000,
        "close": 81303.9,
        "rsi": 47.05466124181819,
        "ret_1": 0.0016570283875450601,
        "ret_3": 0.00283568098280576,
        "vol_z": 0.4533888383288871,
        "book_imb": -0.4182690816611358,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 04:00:04+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793220900000,
        "target_ts_ms": 1793221200000,
        "close": 4062.0,
        "rsi": 54.43925233644879,
        "ret_1": -0.00022151665066826427,
        "ret_3": -0.0005413119433098318,
        "vol_z": -0.02724011658727493,
        "book_imb": 0.2112713473891104,
        "hour_bkk": 3,
        "ts_bkk": "2026-10-29 04:00:04+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 1.925310313621043,
        "confidence": 0.8751410512481371,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793221200000,
        "target_ts_ms": 1793221500000,
        "close": 81344.1,
        "rsi": 45.482695810564735,
        "ret_1": 0.0004944412260667895,
        "ret_3": 0.003662059069210238,
        "vol_z": 0.5309203856622617,
        "book_imb": 0.2759455054951606,
        "hour_bkk": 4,
        "ts_bkk": "2026-10-29 04:05:44+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793221200000,
        "target_ts_ms": 1793221500000,
        "close": 4062.2,
        "rsi": 54.651162790697676,
        "ret_1": 4.923682914815807e-05,
        "ret_3": -0.0006642229821152483,
        "vol_z": -0.5868758580572939,
        "book_imb": -0.19284660536998816,
        "hour_bkk": 4,
        "ts_bkk": "2026-10-29 04:05:44+0700"
      },
      {
        "event": "predict",
        "symbol": "BTC",
        "inst": "BTC-USDT-SWAP",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.8373482057958832,
        "confidence": 0.38061282064330465,
        "reason": "BTC v8 no setup",
        "pred_ts_ms": 1793223600000,
        "target_ts_ms": 1793223900000,
        "close": 81219.9,
        "rsi": 53.33017302678353,
        "ret_1": 0.0007725747068651591,
        "ret_3": 0.0006714683843115416,
        "vol_z": -1.3184800567166701,
        "book_imb": 0.9830714344765309,
        "hour_bkk": 4,
        "ts_bkk": "2026-10-29 04:45:41+0700"
      },
      {
        "event": "predict",
        "symbol": "GOLD",
        "inst": "XAUT-USDT",
        "version": "v8",
        "signal": "ABSTAIN",
        "score": 0.0,
        "confidence": 0.0,
        "reason": "GOLD v8 hors session",
        "pred_ts_ms": 1793223600000,
        "target_ts_ms": 1793223900000,
        "close": 4061.1,
        "rsi": 62.89308176100593,
        "ret_1": 2.4624476729847093e-05,
        "ret_3": -7.386615452804006e-05,
        "vol_z": -0.5960634509497681,
        "book_imb": 0.35992352313994247,
        "hour_bkk": 4,
        "ts_bkk": "2026-10-29 04:45:42+0700"
      }
    ],
    "last_signals": [
      {
        "symbol": "GOLD",
        "signal": "ABSTAIN",
        "score": 0.0,
        "rsi": 62.89308176100593,
        "reason": "GOLD v8 hors session",
        "ts_bkk": "2026-10-29 04:45:42+0700",
        "version": "v8",
        "close": 4061.1
      },
      {
        "symbol": "BTC",
        "signal": "ABSTAIN",
        "score": 0.8373482057958832,
        "rsi": 53.33017302678353,
        "reason": "BTC v8 no setup",
        "ts_bkk": "2026-10-29 04:45:41+0700",
        "version": "v8",
        "close": 81219.9
      },
      {
        "symbol": "GOLD",
        "signal": "ABSTAIN",
        "score": 0.0,
        "rsi": 54.651162790697676,
        "reason": "GOLD v8 hors session",
        "ts_bkk": "2026-10-29 04:05:44+0700",
        "version": "v8",
        "close": 4062.2
      },
      {
        "symbol": "BTC",
        "signal": "ABSTAIN",
        "score": 1.925310313621043,
        "rsi": 45.482695810564735,
        "reason": "BTC v8 no setup",
        "ts_bkk": "2026-10-29 04:05:44+0700",
        "version": "v8",
        "close": 81344.1
      },
      {
        "symbol": "GOLD",
        "signal": "ABSTAIN",
        "score": 0.0,
        "rsi": 54.43925233644879,
        "reason": "GOLD v8 hors session",
        "ts_bkk": "2026-10-29 04:00:04+0700",
        "version": "v8",
        "close": 4062.0
      },
      {
        "symbol": "BTC",
        "signal": "ABSTAIN",
        "score": 3.372713542094782,
        "rsi": 47.05466124181819,
        "reason": "BTC v8 no setup",
        "ts_bkk": "2026-10-29 04:00:04+0700",
        "version": "v8",
        "close": 81303.9
      },
      {
        "symbol": "GOLD",
        "signal": "ABSTAIN",
        "score": 0.0,
        "rsi": 58.01354401805864,
        "reason": "GOLD v8 hors session",
        "ts_bkk": "2026-10-29 03:55:04+0700",
        "version": "v8",
        "close": 4062.9
      },
      {
        "symbol": "BTC",
        "signal": "ABSTAIN",
        "score": 1.4893140817985677,
        "rsi": 44.19168375908966,
        "reason": "BTC v8 no setup",
        "ts_bkk": "2026-10-29 03:55:04+0700",
        "version": "v8",
        "close": 81169.4
      }
    ],
    "feature_snapshot": {
      "symbol": "GOLD",
      "signal": "ABSTAIN",
      "score": 0.0,
      "rsi": 62.89308176100593,
      "reason": "GOLD v8 hors session",
      "ret_1": 2.4624476729847093e-05,
      "ret_3": -7.386615452804006e-05,
      "vol_z": -0.5960634509497681,
      "book_imb": 0.35992352313994247,
      "close": 4061.1,
      "version": "v8",
      "ts_bkk": "2026-10-29 04:45:42+0700"
    }
  },
  "backtest_ref": {
    "v7": {
      "BTC": {
        "precision": 0.589,
        "n": 141
      },
      "GOLD": {
        "precision": 0.5,
        "n": 160
      }
    },
    "v8": {
      "BTC": {
        "precision": 0.602,
        "n": 342
      },
      "GOLD": {
        "precision": 0.679,
        "n": 84
      }
    },
    "notes": [
      "Plafond 80% close≠open 5m jugé irréaliste; edge robuste ~60/68%",
      "Alt métrique: precision@move≥8bps ~65–66% BTC"
    ]
  },
  "bets": {
    "label": "PAPIER",
    "mode": "paper",
    "state": {
      "capital_start": 500.0,
      "equity": 0.0,
      "cash": 0.0,
      "fee_mode": "spread",
      "taker_fee": 0.0008,
      "maker_fee": 0.0,
      "risk_pct": 0.05,
      "n_bets": 33,
      "n_wins": 2,
      "n_losses": 7,
      "n_pushes": 24,
      "n_filtered_small_move": 22,
      "n_extras_resolved": 66,
      "n_majority_trades": 109,
      "pnl_total": -500.0,
      "fees_total": 0.0,
      "n_profitable": 2,
      "max_equity": 500.0,
      "min_equity": 0.0,
      "halted": true,
      "halt_reason": "equity 0.00 < 100.0",
      "open_bets": {},
      "updated_bkk": "2026-10-29 04:45:54+0700",
      "pnl_model": "pepperstone_even_money",
      "stake_usdt": 100.0,
      "spread_bps": 2.5,
      "fee_source": "pepperstone_btcusd_spread_observed",
      "regime": "pepperstone_even_money_500_100_lev200 since 2026-10-28 13:11:25+0700",
      "leverage": 200
    },
    "config": {
      "capital_usdt": 500.0,
      "risk_pct": 0.05,
      "fee_mode": "spread",
      "taker_fee": 0.0008,
      "maker_fee": 0.0,
      "symbols_allowed": [
        "BTC",
        "GOLD"
      ],
      "min_confidence": 0.0,
      "max_open_bets": 5,
      "halt_on_equity_below": 100.0,
      "indicator_dir": "/workspace/market-indicator-5m/data",
      "journal_path": "/workspace/market-indicator-5m/data/journal.jsonl",
      "status_path": "/workspace/market-indicator-5m/data/status.json",
      "poll_seconds": 15,
      "timezone": "Asia/Bangkok",
      "notes": "Paper Pepperstone even-money SOURCE OF TRUTH: capital 500, stake 100, win=+100, loss=-100, push 0 (spread_bps informational only). Autonomous OKX settle if no v8 outcome; refund if no price after grace. Single book = this bet_engine (data/state.json). paper_ps engine STOPPED (tick RO optional). No MT5 orders. Nick untouched.",
      "min_move_bps": 8.0,
      "fee_source": "pepperstone_btcusd_spread_observed",
      "use_blend": true,
      "blend_path": "/workspace/market-indicator-5m/data/pred_blend.json",
      "blend_max_age_s": 240,
      "extras_dir": "/workspace/market-indicator-5m/data/extras",
      "signal_extras_path": "/workspace/trading/own_strategy/updown_bet/data/signal_extras.json",
      "extras_max_age_s": 180,
      "use_extras_resolve": true,
      "extras_resolve_min_strength": 0.35,
      "use_majority_vote": true,
      "majority_min_sources": 3,
      "local_extras_dir": "/workspace/trading/own_strategy/updown_bet/data/extras",
      "min_edge_bps": 2.5,
      "pnl_model": "pepperstone_even_money",
      "push_policy": "abs(move)<min_move_bps -> push 0; win +stake, loss -stake (even_money fee=0)",
      "spread_bps": 2.5,
      "stake_usdt": 100.0,
      "mexc_fallback": {
        "pnl_model": "mexc_futures_rt",
        "taker_fee": 0.0008,
        "min_edge_bps": 16.0,
        "fee_mode": "taker",
        "fee_source": "mexc_futures_api_observed"
      },
      "pepperstone_mt5": {
        "vps": "160.236.128.88",
        "login": 51591720,
        "server": "PepperstoneBS-MT5-Live01",
        "symbol": "BTCUSD",
        "vol_min": 0.01,
        "contract_size": 1.0,
        "nick_magic": 20261027,
        "nick_symbol": "XAUUSD",
        "proposed_btc_magic": 20261028,
        "live_orders": false
      },
      "leverage": 200,
      "margin_note": "Live CFD futur (interdit sans OK opérateur): marge ≈ stake/leverage = 100/200 = 0.5$ par mise. Paper = even-money +100/-100 sur bankroll 500.",
      "autonomous_settle": true,
      "autonomous_settle_grace_s": 20,
      "autonomous_settle_refund_after_s": 900,
      "okx_inst": {
        "BTC": "BTC-USDT-SWAP",
        "GOLD": "XAUT-USDT"
      }
    },
    "win_rate": 0.2222222222222222,
    "open_bets": {},
    "recent_events": [
      {
        "event": "majority_vote",
        "symbol": "BTC",
        "signal": "DOWN",
        "from": "DOWN",
        "n": 5,
        "up": 0,
        "down": 5,
        "sources": [
          "mexc=DOWN",
          "blend_chart=DOWN",
          "blend_extras=DOWN",
          "multi_okx=DOWN",
          "multi_binance=DOWN"
        ],
        "pred_ts_ms": 1793220300000,
        "ts_bkk": "2026-10-29 03:50:45+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "GOLD",
        "signal": "DOWN",
        "from": "ABSTAIN",
        "n": 5,
        "up": 2,
        "down": 3,
        "sources": [
          "okx_taker=UP",
          "mexc=UP",
          "blend_extras=DOWN",
          "multi_binance=DOWN",
          "multi_bybit=DOWN"
        ],
        "pred_ts_ms": 1793220300000,
        "ts_bkk": "2026-10-29 03:50:45+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "BTC",
        "signal": "UP",
        "from": "UP",
        "n": 5,
        "up": 5,
        "down": 0,
        "sources": [
          "mexc=UP",
          "blend_extras=UP",
          "multi_okx=UP",
          "multi_binance=UP",
          "multi_bybit=UP"
        ],
        "pred_ts_ms": 1793220600000,
        "ts_bkk": "2026-10-29 03:55:15+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "GOLD",
        "signal": "UP",
        "from": "UP",
        "n": 4,
        "up": 3,
        "down": 1,
        "sources": [
          "mexc=UP",
          "blend_extras=UP",
          "multi_okx=UP",
          "multi_binance=DOWN"
        ],
        "pred_ts_ms": 1793220600000,
        "ts_bkk": "2026-10-29 03:55:15+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "BTC",
        "signal": "UP",
        "from": "UP",
        "n": 5,
        "up": 4,
        "down": 1,
        "sources": [
          "mexc=DOWN",
          "blend_chart=UP",
          "blend_extras=UP",
          "multi_okx=UP",
          "multi_binance=UP"
        ],
        "pred_ts_ms": 1793220900000,
        "ts_bkk": "2026-10-29 04:00:15+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "GOLD",
        "signal": "DOWN",
        "from": "DOWN",
        "n": 5,
        "up": 1,
        "down": 4,
        "sources": [
          "mexc=UP",
          "okx_paxg=DOWN",
          "blend_chart=DOWN",
          "blend_extras=DOWN",
          "multi_okx=DOWN"
        ],
        "pred_ts_ms": 1793220900000,
        "ts_bkk": "2026-10-29 04:00:15+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "BTC",
        "signal": "UP",
        "from": "ABSTAIN",
        "n": 4,
        "up": 3,
        "down": 1,
        "sources": [
          "mexc=UP",
          "multi_okx=UP",
          "multi_binance=DOWN",
          "multi_bybit=UP"
        ],
        "pred_ts_ms": 1793221200000,
        "ts_bkk": "2026-10-29 04:45:39+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "GOLD",
        "signal": "UP",
        "from": "ABSTAIN",
        "n": 5,
        "up": 3,
        "down": 2,
        "sources": [
          "mexc=UP",
          "okx_paxg=DOWN",
          "multi_okx=DOWN",
          "multi_binance=UP",
          "multi_bybit=UP"
        ],
        "pred_ts_ms": 1793221200000,
        "ts_bkk": "2026-10-29 04:45:39+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "BTC",
        "signal": "UP",
        "from": "UP",
        "n": 5,
        "up": 4,
        "down": 1,
        "sources": [
          "blend_chart=UP",
          "blend_extras=UP",
          "mexc=UP",
          "multi_okx=UP",
          "multi_binance=DOWN"
        ],
        "pred_ts_ms": 1793223600000,
        "ts_bkk": "2026-10-29 04:45:54+0700"
      },
      {
        "event": "majority_vote",
        "symbol": "GOLD",
        "signal": "DOWN",
        "from": "ABSTAIN",
        "n": 5,
        "up": 2,
        "down": 3,
        "sources": [
          "blend_extras=DOWN",
          "mexc=UP",
          "okx_paxg=DOWN",
          "multi_okx=DOWN",
          "multi_binance=UP"
        ],
        "pred_ts_ms": 1793223600000,
        "ts_bkk": "2026-10-29 04:45:54+0700"
      }
    ],
    "journal_csv_tail": [
      "2026-10-28 21:55:22+0700,bet_loss,BTC,UP,100.0,spread,0.0,-100.0,100.0,False,DOWN,1793199000000,1793199300000,\"majority UP 4/5 (80% UP) [mexc=UP, blend_chart=UP, blend_extras=UP, multi_okx=UP, multi_binance=DOWN]\",blend-v10",
      "2026-10-28 21:56:22+0700,bet_push,GOLD,DOWN,100.0,spread,0.0,0.0,100.0,,DOWN,1793199000000,1793199300000,\"majority DOWN 2/5 (40% UP) [mexc=DOWN, okx_paxg=DOWN, blend_chart=DOWN, blend_extras=UP, multi_okx=UP]\",blend-v10+maj",
      "2026-10-28 22:00:07+0700,bet_open,BTC,UP,100.0,spread,,,100.0,,,1793199600000,1793199900000,\"majority UP 3/3 (100% UP) [blend_extras=UP, multi_okx=UP, multi_bybit=UP]\",blend-v10",
      "2026-10-28 22:05:23+0700,bet_push,BTC,UP,100.0,spread,0.0,0.0,100.0,,UP,1793199600000,1793199900000,\"majority UP 3/3 (100% UP) [blend_extras=UP, multi_okx=UP, multi_bybit=UP]\",blend-v10",
      "2026-10-28 22:10:08+0700,bet_open,BTC,DOWN,100.0,spread,,,100.0,,,1793200200000,1793200500000,\"majority DOWN 2/5 (40% UP) [mexc=UP, blend_chart=UP, blend_extras=DOWN, multi_okx=DOWN, multi_binance=DOWN]\",blend-v10+maj",
      "2026-10-28 22:15:24+0700,bet_push,BTC,DOWN,100.0,spread,0.0,0.0,100.0,,UP,1793200200000,1793200500000,\"majority DOWN 2/5 (40% UP) [mexc=UP, blend_chart=UP, blend_extras=DOWN, multi_okx=DOWN, multi_binance=DOWN]\",blend-v10+maj",
      "2026-10-28 22:20:09+0700,bet_open,BTC,UP,100.0,spread,,,100.0,,,1793200800000,1793201100000,\"majority UP 4/5 (80% UP) [mexc=UP, blend_chart=UP, blend_extras=DOWN, multi_okx=UP, multi_binance=UP]\",blend-v10+maj",
      "2026-10-28 22:25:25+0700,bet_push,BTC,UP,100.0,spread,0.0,0.0,100.0,,UP,1793200800000,1793201100000,\"majority UP 4/5 (80% UP) [mexc=UP, blend_chart=UP, blend_extras=DOWN, multi_okx=UP, multi_binance=UP]\",blend-v10+maj",
      "2026-10-28 22:30:10+0700,bet_open,BTC,UP,100.0,spread,,,100.0,,,1793201400000,1793201700000,\"majority UP 5/5 (100% UP) [mexc=UP, blend_chart=UP, blend_extras=UP, multi_okx=UP, multi_binance=UP]\",blend-v10",
      "2026-10-28 22:35:25+0700,bet_loss,BTC,UP,100.0,spread,0.0,-100.0,0.0,False,DOWN,1793201400000,1793201700000,\"majority UP 5/5 (100% UP) [mexc=UP, blend_chart=UP, blend_extras=UP, multi_okx=UP, multi_binance=UP]\",blend-v10"
    ]
  },
  "live_bets": {
    "source": "MEXC",
    "mode": "live",
    "session_label": "live_1h_api",
    "status": "ended",
    "status_label": "Session live MEXC — terminée",
    "symbols": [
      "BTC",
      "GOLD"
    ],
    "stake_usdt": 25.0,
    "window_minutes": 60,
    "fee_mode": "taker",
    "taker_fee": 0.0008,
    "maker_fee": 0.0,
    "capital_risk_usdt": 50.0,
    "max_concurrent": 2,
    "session_start_bkk": "2026-10-28 11:13:08+0700",
    "session_end_bkk": "2026-10-28 12:13:08+0700",
    "window_remaining_sec": 0,
    "n_open": 0,
    "n_wins": 0,
    "n_losses": 2,
    "n_pushes": 0,
    "n_bets": 2,
    "win_rate": 0.0,
    "realized_pnl_usdt": -0.359,
    "unrealized_pnl_usdt": 0.0,
    "fees_paid_usdt": 0.3957,
    "risk_used_usdt": 0,
    "open_bets": [],
    "closed_bets": [
      {
        "id": null,
        "symbol": "BTC",
        "side": "DOWN",
        "stake_usdt": null,
        "entry_bkk": null,
        "settle_bkk": "2026-10-28 10:54:29+0700",
        "expiry_bkk": null,
        "entry_price": 81142.3,
        "exit_price": 81118.4,
        "mark_price": null,
        "hit": null,
        "fee_usdt": 0.19471275999999998,
        "pnl_usdt": -0.158863,
        "status": "lost",
        "order_id": null,
        "reason": null,
        "vol": 15,
        "raw_pnl": 0.03585
      },
      {
        "id": null,
        "symbol": "GOLD",
        "side": "DOWN",
        "stake_usdt": null,
        "entry_bkk": null,
        "settle_bkk": "2026-10-28 10:54:45+0700",
        "expiry_bkk": null,
        "entry_price": 4053.0,
        "exit_price": 4052.97,
        "mark_price": null,
        "hit": null,
        "fee_usdt": 0.2010284,
        "pnl_usdt": -0.200098,
        "status": "lost",
        "order_id": null,
        "reason": null,
        "vol": 31,
        "raw_pnl": 0.00093
      }
    ],
    "recent_journal": [
      {
        "event": "session_start",
        "ts_bkk": "2026-10-28 10:24:49+0700",
        "stake_usdt": 25.0,
        "symbols": [
          "BTC",
          "GOLD"
        ],
        "window_minutes": 30,
        "fee_btc": 0.0001,
        "fee_xau": 0.0002
      },
      {
        "ts_bkk": "2026-10-28 10:28:26+0700",
        "event": "session_start",
        "remain_s": 1583,
        "end_ts": 1793159689.6209407
      },
      {
        "ts_bkk": "2026-10-28 10:35:22+0700",
        "event": "error",
        "where": "submit_open",
        "resp": "{'success': False, 'code': 2030, 'message': 'External order ID too long (max. 32 digit)'}",
        "body": {
          "symbol": "BTC_USDT",
          "price": 81146.3,
          "vol": 15,
          "leverage": 5,
          "side": 3,
          "type": 5,
          "openType": 1,
          "positionMode": 1,
          "externalOid": "updown30_BTC_1793158200000_DOWN_1793158518"
        }
      },
      {
        "ts_bkk": "2026-10-28 10:40:23+0700",
        "event": "error",
        "where": "submit_open",
        "resp": "{'success': False, 'code': 2030, 'message': 'External order ID too long (max. 32 digit)'}",
        "body": {
          "symbol": "BTC_USDT",
          "price": 81169.9,
          "vol": 15,
          "leverage": 5,
          "side": 3,
          "type": 5,
          "openType": 1,
          "positionMode": 1,
          "externalOid": "updown30_BTC_1793158500000_DOWN_1793158820"
        }
      },
      {
        "ts_bkk": "2026-10-28 10:45:25+0700",
        "event": "error",
        "where": "submit_open",
        "resp": "{'success': False, 'code': 2030, 'message': 'External order ID too long (max. 32 digit)'}",
        "body": {
          "symbol": "BTC_USDT",
          "price": 81173.9,
          "vol": 15,
          "leverage": 5,
          "side": 3,
          "type": 5,
          "openType": 1,
          "positionMode": 1,
          "externalOid": "updown30_BTC_1793158800000_DOWN_1793159121"
        }
      },
      {
        "ts_bkk": "2026-10-28 10:45:29+0700",
        "event": "session_start",
        "remain_s": 559,
        "end_ts": 1793159689.6209407
      },
      {
        "ts_bkk": "2026-10-28 10:45:55+0700",
        "event": "session_start",
        "remain_s": 534,
        "end_ts": 1793159689.6209407
      },
      {
        "ts_bkk": "2026-10-28 10:51:19+0700",
        "event": "session_start",
        "remain_s": 210,
        "end_ts": 1793159689.6209407
      },
      {
        "ts_bkk": "2026-10-28 10:54:25+0700",
        "event": "error",
        "where": "submit_close",
        "resp": "{'success': False, 'code': 2001, 'message': 'Order direction error'}"
      },
      {
        "ts_bkk": "2026-10-28 10:54:29+0700",
        "event": "bet_settle",
        "result": "loss",
        "symbol": "BTC",
        "side": "DOWN",
        "entry": 81142.3,
        "exit": 81118.4,
        "vol": 15,
        "fee_total": 0.19471275999999998,
        "pnl": -0.158863,
        "raw_pnl": 0.03585,
        "hit": null,
        "actual": null,
        "move_bps": null,
        "close_reason": "session_end_flatten",
        "order_id": null
      },
      {
        "ts_bkk": "2026-10-28 10:54:41+0700",
        "event": "error",
        "where": "submit_close",
        "resp": "{'success': False, 'code': 2001, 'message': 'Order direction error'}"
      },
      {
        "ts_bkk": "2026-10-28 10:54:45+0700",
        "event": "bet_settle",
        "result": "loss",
        "symbol": "GOLD",
        "side": "DOWN",
        "entry": 4053.0,
        "exit": 4052.97,
        "vol": 31,
        "fee_total": 0.2010284,
        "pnl": -0.200098,
        "raw_pnl": 0.00093,
        "hit": null,
        "actual": null,
        "move_bps": null,
        "close_reason": "session_end_flatten",
        "order_id": null
      },
      {
        "ts_bkk": "2026-10-28 11:00:41+0700",
        "event": "session_end",
        "n_bets": 2,
        "n_wins": 0,
        "n_losses": 2,
        "realized_pnl_usdt": -0.358961,
        "fees_paid_usdt": 0.395741,
        "taker_fee_observed": 0.0008,
        "status": "ended",
        "note": "republish live_status for board; SIDE_CLOSE fixed"
      },
      {
        "ts_bkk": "2026-10-28 11:13:08+0700",
        "event": "session_start",
        "window_minutes": 60,
        "stake_usdt": 25,
        "mode": "api_futures"
      },
      {
        "ts_bkk": "2026-10-28 11:13:08+0700",
        "event": "session_start",
        "remain_s": 3599,
        "end_ts": 1793164388.920803
      }
    ],
    "notes": "1h API futures BTC+GOLD @25$. Pairing ON. XRP intact.",
    "updated_bkk": "2026-10-29 04:49:27+0700",
    "schema_version": 1,
    "data_present": true,
    "mexc_symbols": [
      "BTC_USDT",
      "XAU_USDT"
    ],
    "leverage": 5,
    "taker_fee_btc": 0.0008,
    "taker_fee_xau": 0.0008,
    "fee_note": "opérateur+fills: taker 0.08% not 0.01%",
    "process": {
      "pid": null,
      "alive": false
    },
    "xrp_guard": "XRP long — jamais touché",
    "marks_live": true
  },
  "process_health": {
    "run_paper": {
      "name": "run_paper",
      "pid": 10508,
      "alive": true,
      "status": "OK"
    },
    "improve_loop_watcher": {
      "name": "improve_loop_watcher",
      "pid": 10517,
      "alive": true,
      "status": "OK"
    },
    "bet_engine": {
      "name": "bet_engine",
      "pid": 620461,
      "alive": true,
      "status": "OK"
    },
    "watchdog_paper": {
      "name": "watchdog_paper",
      "pid": 10497,
      "alive": true,
      "status": "OK"
    },
    "board_loop": {
      "name": "board_loop",
      "pid": 24799,
      "alive": true,
      "status": "OK"
    }
  },
  "improve": {
    "active_version": "v8",
    "goal": 0.85,
    "next_tighten": "v8.2",
    "override": {
      "name": "v8.2",
      "btc_ret3": 0.0016,
      "btc_ret3_rsi_hi": 75,
      "btc_ret3_rsi_lo": 25,
      "btc_fade_thr": 2.2,
      "btc_fade_rsi_hi": 80,
      "btc_fade_rsi_lo": 20,
      "btc_rsi_ext_hi": 90,
      "btc_rsi_ext_lo": 10,
      "gold_fade_thr": 2.2,
      "gold_rsi_hi": 75,
      "gold_rsi_lo": 25,
      "gold_hours": [
        8,
        15
      ],
      "require_book": true,
      "from": "v8.1",
      "reason": "prec=0.3902439024390244 n=41 <0.85"
    }
  },
  "extras": {
    "BTC": {
      "symbol": "BTC",
      "updated_bkk": "2026-10-29 04:48:31+0700",
      "source": "okx enrich_okx",
      "taker_buy_ratio": 0.6946218990691092,
      "taker_buy_sell_ratio": 2.2746290482247353,
      "funding_rate": 0.0001,
      "funding_z": 0.0,
      "oi_ccy": 30483.467400000118,
      "oi_change_5m": -0.004191462203817426,
      "oi_change_1h": 0.0018418548701028274,
      "ls_ratio": 1.96,
      "liq_long_5m": 0.0,
      "liq_short_5m": 0.0,
      "liq_imbalance_5m": null,
      "basis_bps": -3.1595227030756234,
      "book_imb_25": 0.3796001870469955,
      "book_imb_5": 0.5942442421445652,
      "multi_vote": "UP",
      "multi_n_up": 2,
      "multi_n_down": 1,
      "multi_n_sources": 3,
      "multi_disagree": true
    },
    "GOLD": {
      "symbol": "GOLD",
      "updated_bkk": "2026-10-29 04:48:35+0700",
      "source": "okx enrich_okx+multi",
      "taker_buy_ratio": 0.3453007534212831,
      "funding_rate": null,
      "funding_z": -1.126966492818588,
      "oi_change_5m": 0.4033322818701883,
      "oi_change_1h": null,
      "liq_imbalance_5m": null,
      "basis_bps": null,
      "book_imb_25": 0.032761965251020125,
      "book_imb_5": -0.18144034300061482,
      "multi_vote": "DOWN",
      "multi_n_up": 0,
      "multi_n_down": 3,
      "multi_n_sources": 3,
      "multi_disagree": true
    }
  },
  "alt_metrics": {
    "move_bps_outcomes": [],
    "horizon_15m_outcomes": [],
    "note": "Champs optionnels — apparaîtront quand Gestionnaire les écrit dans journal outcomes"
  },
  "suggested_levers": [
    "DYNAMIC: prec live 42.2% < 85% (n=45) → déclencher tighten v8.1/v8.2",
    "DYNAMIC: backtest v8 BTC 60.2% << 85% — besoin features externes (funding/OI/liq)",
    "Resserre seuils RSI / fade (v8.1 → v8.2) si prec live < 85 % et n≥36",
    "Exiger book imbalance aligné avec le signal (require_book)",
    "Filtrer move suivant ≥8 bps (precision@move) — edge backtest ~65–66 % BTC",
    "GOLD : rester session BKK 8–16 ; tester 8–15 si bruit",
    "Ajouter funding rate OKX + OI delta 5m comme filtre",
    "Ajouter taker buy/sell ratio OKX rubik",
    "Ajouter liquidations OKX (cascade → mean-rev)",
    "Fear & Greed extrême → bias fade",
    "Élargir (v8c.*) seulement si abstain > 90 % après ≥6h paper",
    "min_confidence côté bet_engine une fois n live stable"
  ],
  "help_sources_short": [
    "OKX funding / OI / taker-volume / liquidations (OK)",
    "Fear&Greed alternative.me (OK)",
    "MEXC contract ticker (OK) — Prediction docs manuelle",
    "Binance/Bybit BLOQUÉS depuis ce box"
  ]
}
