Drain and extra-day legs always trade MNQ

They traded the micro of whatever the firm listed: MNQ with NQ, but MGC
for a firm listing only GC and CL. Now every futures firm's tiny legs go on
MNQ, the one micro the bot has always drained on.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Brandon Li
2026-09-27 18:54:41 -05:00
co-authored by Claude Opus 5.5
parent 5696f2b036
commit ed62788480
4 changed files with 15 additions and 20 deletions
+2 -2
View File
@@ -23,7 +23,7 @@ import {
} from './trading-logic';
import { getSetting, setSetting } from './db';
import type { LaneTick, TickReason } from './master-protocol';
import { POINT_VALUES, housekeepingRoot, MAX_HOLD_HOURS } from './instrument-specs';
import { POINT_VALUES, housekeepingRoot, HOUSEKEEPING_ROOT, MAX_HOLD_HOURS } from './instrument-specs';
import { firmInstruments, drawFuturesInstrument, spreadBlock, type LegShape } from './instruments';
import { recordEntry } from './trade-mix';
import { errorMessage, isClientReady, isOrderNotPlaced, type PlatformClient, type PlatformContract, type PickContext } from './platform-client';
@@ -434,7 +434,7 @@ function releaseTradeMutex(lease: number, lane: string): void {
* housekeepingRoot); a DXtrade firm its current pick. */
function housekeepingFor(firm: { platform: string; instruments?: string[]; bannedSymbols?: string[]; symbolMap?: Record<string, { symbol: string }[]> }): string {
if (firm.platform === 'dxtrade') return '*';
return housekeepingRoot(firmInstruments(firm)) ?? 'MNQ';
return housekeepingRoot(firmInstruments(firm)) ?? HOUSEKEEPING_ROOT;
}
/** The instrument a leg actually trades: drain legs go on the firm's