fix: remove kernel printf debug, verify trade count fix works

Trade count dropped from 77% turnover (620K/800K) to 16.5% (527/3200)
with min_hold_bars=3. The hold enforcement is working correctly in the
standard training path. SIGSEGV in hyperopt path is a separate issue
(likely buffer sizing in the hyperopt adapter's experience collector).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
jgrusewski
2026-03-26 00:20:49 +01:00
parent 4729549250
commit bcf62eaecd

View File

@@ -380,11 +380,8 @@ extern "C" __global__ void experience_action_select(
* Prevents both greedy and random exploration from changing exposure.
* Portfolio state: ps[0] = position, ps[10] = hold_time. */
int ps_base = i * 20; /* PORTFOLIO_STRIDE = 20 */
if (i == 0) printf("DEBUG action_select: i=%d N=%d ps_base=%d min_hold=%d max_pos=%.2f portfolio_states=%p\n",
i, N, ps_base, min_hold_bars, max_position, portfolio_states);
float hold_time_val = portfolio_states[ps_base + 10];
float cur_position = portfolio_states[ps_base + 0];
if (i == 0) printf("DEBUG action_select: hold_time=%.1f position=%.4f\n", hold_time_val, cur_position);
int in_hold = (hold_time_val > 0.0f && hold_time_val < (float)min_hold_bars
&& min_hold_bars > 0);