New paste Repaste Download
tests/services/test_tide_etf_reasoning.py:654: in test_reason_event_bad_decision_coerced_no_trade
    out = TR.reason_tide_event(date(2026, 7, 6), ev, _timeline())
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        ev         = {'direction': 'up', 'et': '10:00:00', 'kind': 'rollover_up', 'via': 'mt3'}
        monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x1256edd90>
rtrader/services/tide_etf_reasoning.py:4535: in reason_tide_event
    prefix = _morning_prefix(day, str(event.get("et") or ""))
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        attempts   = 3
        conf       = None
        day        = datetime.date(2026, 7, 6)
        entry_facts = None
        event      = {'direction': 'up', 'et': '10:00:00', 'kind': 'rollover_up', 'via': 'mt3'}
        max_tokens = 5000
        model      = None
        struct_ctx = None
        system_prompt = None
        timeline   = {'day': '2026-07-06', 'fake_up_peak': {'et': '11:03', 'mean_pct': 0.813}, 'gap_down': (False, None, None), 'gap_up': (True, '09:30:00', '11:30:00'), ...}
rtrader/services/tide_etf_reasoning.py:4315: in _morning_prefix
    return morning_prefix_for_consult(day, event_et)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        day        = datetime.date(2026, 7, 6)
        event_et   = '10:00:00'
        morning_prefix_for_consult = <function morning_prefix_for_consult at 0x11f7b6020>
rtrader/services/morning_prior_day.py:336: in morning_prefix_for_consult
    return morning_prior_day_block(day, db_factory=db_factory) + "\n\n"
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        day        = datetime.date(2026, 7, 6)
        db_factory = None
        et         = '10:00'
        event_et   = '10:00:00'
rtrader/services/morning_prior_day.py:278: in morning_prior_day_block
    late_turns = load_late_turns(d1)
                 ^^^^^^^^^^^^^^^^^^^
        d1         = datetime.date(2026, 7, 2)
        d1_iso     = '2026-07-02'
        day        = datetime.date(2026, 7, 6)
        db_factory = None
        late_turns = None
        ledger_rows = None
        profile    = {'blocks': [BlockStory(direction='DOWN', start_et='09:30', end_et='09:42', duration_min=12, size=7.95, share_of_day=0....de. One side never got answered — the band goes home loaded on the TNA-below-crowd side.', 'close_stretch': 3.037, ...}
rtrader/services/morning_prior_day.py:82: in load_late_turns
    for o in compute_rollover_onsets(day) or []:
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        after_et   = '14:00'
        compute_rollover_onsets = <function compute_rollover_onsets at 0x11f623560>
        day        = datetime.date(2026, 7, 2)
        out        = []
rtrader/services/market_turn_algo_sim.py:459: in compute_rollover_onsets
    km_up = _km60_up(s, anchor, i, km_win=km_win, _cache=_picks_cache)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        _gu_gate   = True
        _km_min_bars = 30
        _picks_cache = {0: None, 1: None, 2: None, 3: None, ...}
        _trs       = <module 'rtrader.services.tide_rollover_store' from '/Users/cao/robinhood-pm-91f24405f0d7/rtrader/services/tide_rollover_store.py'>
        anchor     = datetime.datetime(2026, 7, 2, 9, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York'))
        day        = datetime.date(2026, 7, 2)
        db_factory = None
        direction  = 'down'
        dn         = False
        end        = None
        f          = {'direction': 'up', 'fire_et': '18:45:46', 'fire_ts': datetime.datetime(2026, 7, 2, 22, 45, 46, 342000, tzinfo=datetime.timezone.utc), 'min_ticks': 3, ...}
        fires      = {'down': False, 'up': False}
        gap_down_gate = True
        gap_fired  = True
        gap_hi     = datetime.datetime(2026, 7, 2, 11, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York'))
        gap_lo     = datetime.datetime(2026, 7, 2, 9, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York'))
        gap_up_gate = True
        gapdn_fired = False
        gapdn_hi   = None
        gapdn_lo   = None
        i          = 36
        in_gap     = True
        in_gapdn   = False
        km_dn      = False
        km_up      = False
        km_win     = None
        mt3_dn_hit = False
        mt3_down_min = {datetime.datetime(2026, 7, 2, 10, 1, tzinfo=zoneinfo.ZoneInfo(key='America/New_York')), datetime.datetime(2026, 7, 2,...(key='America/New_York')), datetime.datetime(2026, 7, 2, 11, 2, tzinfo=zoneinfo.ZoneInfo(key='America/New_York')), ...}
        mt3_up_hit = False
        mt3_up_min = set()
        out        = [{'direction': 'down', 'down_vol': 250002957018.0, 'fire_et': '10:01:00', 'fire_ts': datetime.datetime(2026, 7, 2, 14, 1, tzinfo=datetime.timezone.utc), ...}]
        prev       = {'down': False, 'up': False}
        regime_gap_up = False
        s          = _Series(T=[datetime.datetime(2026, 7, 2, 9, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York')), datetime.datetime(2...685.0, 629945847137.0, 628191442895.0, 625621870356.0, 621362542811.0, 619078640240.0, 613987424600.0, 616034921743.0])
        t          = datetime.datetime(2026, 7, 2, 10, 6, tzinfo=zoneinfo.ZoneInfo(key='America/New_York'))
        tmin       = datetime.datetime(2026, 7, 2, 10, 5, tzinfo=zoneinfo.ZoneInfo(key='America/New_York'))
        up         = False
        via        = {'down': 'mt3-accel', 'up': 'mt3-accel'}
rtrader/services/market_turn_algo_sim.py:223: in _km60_up
    picks = _km60_picks(s, anchor_ts, i, km_win=km_win, _cache=_cache)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        _cache     = {0: None, 1: None, 2: None, 3: None, ...}
        anchor_ts  = datetime.datetime(2026, 7, 2, 9, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York'))
        i          = 36
        km_win     = None
        s          = _Series(T=[datetime.datetime(2026, 7, 2, 9, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York')), datetime.datetime(2...685.0, 629945847137.0, 628191442895.0, 625621870356.0, 621362542811.0, 619078640240.0, 613987424600.0, 616034921743.0])
rtrader/services/market_turn_algo_sim.py:204: in _km60_picks
    km = KMeans(n_clusters=3, n_init=4, random_state=0).fit(vv)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        KMeans     = <class 'sklearn.cluster._kmeans.KMeans'>
        _cache     = {0: None, 1: None, 2: None, 3: None, ...}
        anchor_ts  = datetime.datetime(2026, 7, 2, 9, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York'))
        i          = 36
        idx        = [0, 1, 2, 3, 4, 5, ...]
        km_win     = None
        lo_t       = datetime.datetime(2026, 7, 2, 9, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York'))
        s          = _Series(T=[datetime.datetime(2026, 7, 2, 9, 30, tzinfo=zoneinfo.ZoneInfo(key='America/New_York')), datetime.datetime(2...685.0, 629945847137.0, 628191442895.0, 625621870356.0, 621362542811.0, 619078640240.0, 613987424600.0, 616034921743.0])
        vv         = array([[1.01190654e+12],
       [1.01223976e+12],
       [1.00849544e+12],
       [1.01282098e+12],
       [1.01186873... [1.01439202e+12],
       [1.01379674e+12],
       [1.01416832e+12],
       [1.01403242e+12],
       [1.01201824e+12]])
../.pyenv/versions/3.12.12/lib/python3.12/site-packages/sklearn/base.py:1365: in wrapper
    return fit_method(estimator, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        args       = (array([[1.01190654e+12],
       [1.01223976e+12],
       [1.00849544e+12],
       [1.01282098e+12],
       [1.0118687...1.01439202e+12],
       [1.01379674e+12],
       [1.01416832e+12],
       [1.01403242e+12],
       [1.01201824e+12]]),)
        estimator  = KMeans(n_clusters=3, n_init=4, random_state=0)
        fit_method = <function KMeans.fit at 0x119fa47c0>
        global_skip_validation = False
        kwargs     = {}
        partial_fit_and_fitted = False
        prefer_skip_nested_validation = True
../.pyenv/versions/3.12.12/lib/python3.12/site-packages/sklearn/cluster/_kmeans.py:1510: in fit
    labels, inertia, centers, n_iter_ = kmeans_single(
        X          = array([[-1.26780769e+09],
       [-9.34587541e+08],
       [-4.67890271e+09],
       [-3.53365130e+08],
       [-1.305...21767304e+09],
       [ 6.22393848e+08],
       [ 9.93973010e+08],
       [ 8.58076565e+08],
       [-1.15610387e+09]])
        X_mean     = array([1.01317434e+12])
        best_centers = array([[-8.46664155e+08],
       [ 6.81979858e+08],
       [-4.67890271e+09]])
        best_inertia = 7.207561672318747e+18
        best_labels = array([0, 0, 2, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1,
       1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0], dtype=int32)
        best_n_iter = 5
        centers    = array([[ 8.61204081e+08],
       [-1.97613869e+09],
       [-1.98831231e+08]])
        centers_init = array([[-4.67890271e+09],
       [ 7.13490929e+08],
       [-7.86992695e+08]])
        i          = 2
        inertia    = 1.2523184073298803e+19
        init       = 'k-means++'
        init_is_array_like = False
        kmeans_single = <function _kmeans_single_lloyd at 0x119f73920>
        labels     = array([1, 2, 1, 2, 1, 0, 2, 0, 2, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 2, 1, 2,
       0, 0, 0, 2, 2, 0, 1, 2, 2, 2, 0, 0, 0, 0, 1], dtype=int32)
        n_iter_    = 7
        random_state = RandomState(MT19937) at 0x125B9BA40
        sample_weight = array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
       1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
       1., 1., 1.])
        self       = KMeans(n_clusters=3, n_init=4, random_state=0)
        x_squared_norms = array([1.60733634e+18, 8.73453872e+17, 2.18921306e+19, 1.24866915e+17,
       1.70463649e+18, 6.08362786e+17, 9.307720...744e+17, 2.70738284e+17,
       1.48272764e+18, 3.87374102e+17, 9.87982344e+17, 7.36295391e+17,
       1.33657616e+18])
        y          = None
../.pyenv/versions/3.12.12/lib/python3.12/site-packages/sklearn/utils/parallel.py:173: in wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
        args       = (array([[-1.26780769e+09],
       [-9.34587541e+08],
       [-4.67890271e+09],
       [-3.53365130e+08],
       [-1.30...., 1., 1., 1., 1.,
       1., 1., 1.]), array([[-4.67890271e+09],
       [ 7.13490929e+08],
       [-7.86992695e+08]]))
        controller = <threadpoolctl.ThreadpoolController object at 0x125e88770>
        func       = <function _kmeans_single_lloyd at 0x119f73880>
        kwargs     = {'max_iter': 300, 'n_threads': 8, 'tol': np.float64(132745499570201.9), 'verbose': 0}
        limits     = 1
        user_api   = 'blas'
../.pyenv/versions/3.12.12/lib/python3.12/site-packages/sklearn/cluster/_kmeans.py:700: in _kmeans_single_lloyd
    lloyd_iter(
        X          = array([[-1.26780769e+09],
       [-9.34587541e+08],
       [-4.67890271e+09],
       [-3.53365130e+08],
       [-1.305...21767304e+09],
       [ 6.22393848e+08],
       [ 9.93973010e+08],
       [ 8.58076565e+08],
       [-1.15610387e+09]])
        _inertia   = <cyfunction _inertia_dense at 0x119f98450>
        center_shift = array([       0.        , 28303394.20129859, 60407489.69523799])
        center_shift_tot = np.float64(4450146934594387.5)
        centers    = array([[-4.67890271e+09],
       [ 7.13490929e+08],
       [-7.86992695e+08]])
        centers_init = array([[-4.67890271e+09],
       [ 7.13490929e+08],
       [-7.86992695e+08]])
        centers_new = array([[-4.67890271e+09],
       [ 1.56855367e+10],
       [-1.10066340e+10]])
        i          = 2
        labels     = array([2, 2, 0, 2, 2, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 2, 2, 1,
       1, 1, 1, 1, 1, 1, 2, 1, 2, 2, 1, 1, 1, 1, 2], dtype=int32)
        labels_old = array([2, 2, 0, 2, 2, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 2, 2, 2,
       1, 1, 1, 1, 1, 1, 2, 1, 2, 2, 1, 1, 1, 1, 2], dtype=int32)
        lloyd_iter = <cyfunction lloyd_iter_chunked_dense at 0x119f99970>
        max_iter   = 300
        n_clusters = 3
        n_threads  = 8
        sample_weight = array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
       1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
       1., 1., 1.])
        strict_convergence = False
        tol        = np.float64(132745499570201.9)
        verbose    = 0
        weight_in_clusters = array([ 1., 23., 13.])
sklearn/cluster/_k_means_lloyd.pyx:164: in sklearn.cluster._k_means_lloyd.lloyd_iter_chunked_dense
    ???
sklearn/cluster/_k_means_common.pyx:284: in sklearn.cluster._k_means_common._average_centers
    ???
../.pyenv/versions/3.12.12/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:1341: in argmax
    return _wrapfunc(a, 'argmax', axis=axis, out=out, **kwds)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        a          = <MemoryView of 'ndarray' at 0x1257e2a80>
        axis       = None
        keepdims   = <no value>
        kwds       = {}
        out        = None
../.pyenv/versions/3.12.12/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:54: in _wrapfunc
    return _wrapit(obj, method, *args, **kwds)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        args       = ()
        bound      = None
        kwds       = {'axis': None, 'out': None}
        method     = 'argmax'
        obj        = <MemoryView of 'ndarray' at 0x1257e2a80>
../.pyenv/versions/3.12.12/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:46: in _wrapit
    result = getattr(arr, method)(*args, **kwds)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   Failed: Timeout (>60.0s) from pytest-timeout.
        args       = ()
        arr        = array([ 1., 23., 13.])
        conv       = <numpy._core._multiarray_umath._array_converter object at 0x126102190>
        kwds       = {'axis': None, 'out': None}
        method     = 'argmax'
        obj        = <MemoryView of 'ndarray' at 0x1257e2a80>
Filename: None. Size: 14kb. View raw, , hex, or download this file.

This paste expires on 2026-07-30 18:47:58.295315+00:00. Pasted through deprecated-web.