hedgequantx 2.3.18 → 2.3.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/lib/api.jsc CHANGED
Binary file
package/dist/lib/api2.jsc CHANGED
Binary file
package/dist/lib/core.jsc CHANGED
Binary file
Binary file
package/dist/lib/data.jsc CHANGED
Binary file
Binary file
Binary file
Binary file
Binary file
package/dist/lib/n/r1.jsc CHANGED
Binary file
package/dist/lib/n/r2.jsc CHANGED
Binary file
package/dist/lib/n/r3.jsc CHANGED
Binary file
package/dist/lib/n/r4.jsc CHANGED
Binary file
package/dist/lib/n/r5.jsc CHANGED
Binary file
package/dist/lib/n/r6.jsc CHANGED
Binary file
package/dist/lib/n/r7.jsc CHANGED
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hedgequantx",
3
- "version": "2.3.18",
3
+ "version": "2.3.20",
4
4
  "description": "HedgeQuantX - Prop Futures Trading CLI",
5
5
  "main": "src/app.js",
6
6
  "bin": {
@@ -191,6 +191,7 @@ const launchAlgo = async (service, account, contract, config) => {
191
191
  let stopReason = null;
192
192
  let startingPnL = null; // P&L at algo start (from API)
193
193
  let lastPositionPnL = 0;
194
+ let pollCount = 0;
194
195
 
195
196
  // Log startup info from API
196
197
  ui.addLog('info', `Connection: ${connectionType}`);
@@ -213,6 +214,8 @@ const launchAlgo = async (service, account, contract, config) => {
213
214
  // Poll data from API - 100% real data
214
215
  const pollAPI = async () => {
215
216
  try {
217
+ pollCount++;
218
+
216
219
  // Get account P&L from API
217
220
  const accountResult = await service.getTradingAccounts();
218
221
  if (accountResult.success && accountResult.accounts) {
@@ -268,7 +271,10 @@ const launchAlgo = async (service, account, contract, config) => {
268
271
  ui.addLog('info', `${side} ${qty}x @ P&L: $${positionPnL.toFixed(2)}`);
269
272
  }
270
273
  } else {
271
- // No position for this symbol
274
+ // No position for this symbol - log status every 15 polls (~30 sec)
275
+ if (pollCount % 15 === 0) {
276
+ ui.addLog('info', `Waiting for ${symbolName} position... (Session P&L: $${stats.pnl.toFixed(2)})`);
277
+ }
272
278
  lastPositionPnL = 0;
273
279
  }
274
280
  }
@@ -330,6 +336,12 @@ const launchAlgo = async (service, account, contract, config) => {
330
336
  if (cleanupKeys) cleanupKeys();
331
337
  ui.cleanup();
332
338
 
339
+ // Ensure stdin is ready for prompts after algo cleanup
340
+ if (process.stdin.isTTY) {
341
+ process.stdin.setRawMode(false);
342
+ }
343
+ process.stdin.resume();
344
+
333
345
  // Calculate duration
334
346
  const durationMs = Date.now() - stats.startTime;
335
347
  const hours = Math.floor(durationMs / 3600000);