@senpi/runtime 3.0.3-dev.runtime-phase-2.20260625210428 → 3.0.4-dev.runtime-phase-2.20260626011132
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/actions/decision-engine.js +1 -1
- package/dist/actions/open-position/open-position.action.d.ts.map +1 -1
- package/dist/actions/open-position/open-position.action.js +21 -12
- package/dist/actions/open-position/open-position.action.js.map +1 -1
- package/dist/actions/open-position/resolve-margin.d.ts +18 -3
- package/dist/actions/open-position/resolve-margin.d.ts.map +1 -1
- package/dist/actions/open-position/resolve-margin.js +22 -9
- package/dist/actions/open-position/resolve-margin.js.map +1 -1
- package/dist/cli/guide-commands.d.ts.map +1 -1
- package/dist/cli/guide-commands.js +21 -3
- package/dist/cli/guide-commands.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/runtime-api/intake/intake-mount.d.ts.map +1 -1
- package/dist/runtime-api/intake/intake-mount.js +10 -1
- package/dist/runtime-api/intake/intake-mount.js.map +1 -1
- package/dist/runtime-api/intake/types.d.ts +5 -6
- package/dist/runtime-api/intake/types.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.js +3 -2
- package/dist/runtime-api/routes/signals.js.map +1 -1
- package/dist/runtime-api/routes/signals.schema.d.ts +1 -2
- package/dist/runtime-api/routes/signals.schema.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.schema.js +5 -3
- package/dist/runtime-api/routes/signals.schema.js.map +1 -1
- package/dist/scanners/external/scaffold/delivery.py +19 -0
- package/dist/scanners/external/scaffold/signal_envelope.py +57 -19
- package/dist/scanners/external-scanner-receiver.d.ts +9 -3
- package/dist/scanners/external-scanner-receiver.d.ts.map +1 -1
- package/dist/scanners/external-scanner-receiver.js +13 -5
- package/dist/scanners/external-scanner-receiver.js.map +1 -1
- package/dist/scanners/providers/factory.js +7 -2
- package/dist/scanners/providers/factory.js.map +1 -1
- package/dist/strategy/strategy-state.js +5 -0
- package/dist/strategy/strategy-state.js.map +1 -1
- package/dist/types/scanner.d.ts +12 -3
- package/dist/types/scanner.d.ts.map +1 -1
- package/examples/strategies/iguana/README.md +4 -4
- package/examples/strategies/iguana/recipe.yaml +1 -1
- package/examples/strategies/iguana/scanners/scan.py +4 -5
- package/examples/strategies/raptor/README.md +2 -2
- package/examples/strategies/raptor/recipe.yaml +1 -1
- package/examples/strategies/raptor/scanners/scan.py +5 -6
- package/examples/strategies/spider/README.md +3 -3
- package/examples/strategies/spider/scalp/recipe.yaml +1 -1
- package/examples/strategies/spider/scalp/scanners/scan.py +1 -1
- package/examples/strategies/spider/swing/recipe.yaml +1 -1
- package/examples/strategies/spider/swing/scanners/scan.py +3 -3
- package/examples/strategies/turbine/README.md +12 -9
- package/examples/strategies/turbine/recipe-runners.yaml +2 -2
- package/examples/strategies/turbine/recipe-volume.yaml +2 -2
- package/examples/strategies/turbine/scanners/scan.py +10 -6
- package/openclaw.plugin.json +1 -1
- package/package.json +1 -1
|
@@ -12,6 +12,12 @@ import type { ScannerId, Signal } from "./types.js";
|
|
|
12
12
|
export interface ExternalScannerIngestRequest {
|
|
13
13
|
/** Configured runtime scanner name. */
|
|
14
14
|
scanner: ScannerId;
|
|
15
|
+
/**
|
|
16
|
+
* Producer-minted idempotency key from intake (the scaffold journal eid).
|
|
17
|
+
* Observability only — threaded onto the built `Signal` so one signal is
|
|
18
|
+
* greppable across the intake→ingest hops. Never sizes/gates/routes a trade.
|
|
19
|
+
*/
|
|
20
|
+
signal_id?: string;
|
|
15
21
|
/** Asset for a single ingested signal. */
|
|
16
22
|
asset?: string;
|
|
17
23
|
/** Optional direction for a single ingested signal. */
|
|
@@ -20,8 +26,8 @@ export interface ExternalScannerIngestRequest {
|
|
|
20
26
|
score?: number;
|
|
21
27
|
/** Optional single-signal classification override. */
|
|
22
28
|
signal_type?: string;
|
|
23
|
-
/** Optional
|
|
24
|
-
|
|
29
|
+
/** Optional per-signal margin as a percent (0–100) of withdrawable (overrides config sizing). */
|
|
30
|
+
marginPct?: number;
|
|
25
31
|
/** Optional per-signal leverage override (overrides config default). */
|
|
26
32
|
leverage?: number;
|
|
27
33
|
/**
|
|
@@ -50,7 +56,7 @@ export interface ExternalScannerIngestSignalItem {
|
|
|
50
56
|
direction?: Signal["direction"];
|
|
51
57
|
score?: number;
|
|
52
58
|
signal_type?: string;
|
|
53
|
-
|
|
59
|
+
marginPct?: number;
|
|
54
60
|
leverage?: number;
|
|
55
61
|
data: Record<string, unknown>;
|
|
56
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external-scanner-receiver.d.ts","sourceRoot":"","sources":["../../src/scanners/external-scanner-receiver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACrB,cAAc,EACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpD;;;;;;;;GAQG;AACH,MAAM,WAAW,4BAA4B;IAC3C,uCAAuC;IACvC,OAAO,EAAE,SAAS,CAAC;IACnB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAChC,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"external-scanner-receiver.d.ts","sourceRoot":"","sources":["../../src/scanners/external-scanner-receiver.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,8 +83,9 @@ function prepareSingleSignalIngest(options) {
|
|
|
83
83
|
direction: request.direction,
|
|
84
84
|
score: request.score,
|
|
85
85
|
signalType: request.signal_type,
|
|
86
|
-
|
|
86
|
+
marginPct: request.marginPct,
|
|
87
87
|
leverage: request.leverage,
|
|
88
|
+
signalId: request.signal_id,
|
|
88
89
|
data: request.data,
|
|
89
90
|
defaultSignalType: options.defaultSignalType,
|
|
90
91
|
timestamp: options.timestamp,
|
|
@@ -137,7 +138,7 @@ function prepareBatchSignalIngest(options) {
|
|
|
137
138
|
direction: item.direction,
|
|
138
139
|
score: item.score,
|
|
139
140
|
signalType: item.signal_type,
|
|
140
|
-
|
|
141
|
+
marginPct: item.marginPct,
|
|
141
142
|
leverage: item.leverage,
|
|
142
143
|
data: item.data,
|
|
143
144
|
defaultSignalType: options.defaultSignalType,
|
|
@@ -224,10 +225,17 @@ function buildNormalizedSignal(options) {
|
|
|
224
225
|
factors: {},
|
|
225
226
|
meta: structuredClone(options.data),
|
|
226
227
|
};
|
|
228
|
+
// Carry the producer idempotency key for cross-hop grep (observability only).
|
|
229
|
+
if (typeof options.signalId === "string" && options.signalId.length > 0) {
|
|
230
|
+
signal.signal_id = options.signalId;
|
|
231
|
+
}
|
|
227
232
|
// Canonical per-signal sizing/leverage ride at the top level (not in meta),
|
|
228
|
-
// so the open action consumes them directly. Only
|
|
229
|
-
|
|
230
|
-
|
|
233
|
+
// so the open action consumes them directly. Only in-range values are kept.
|
|
234
|
+
// marginPct is a percent of withdrawable (0–100].
|
|
235
|
+
if (typeof options.marginPct === "number" &&
|
|
236
|
+
options.marginPct > 0 &&
|
|
237
|
+
options.marginPct <= 100) {
|
|
238
|
+
signal.marginPct = options.marginPct;
|
|
231
239
|
}
|
|
232
240
|
if (typeof options.leverage === "number" && options.leverage > 0) {
|
|
233
241
|
signal.leverage = options.leverage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external-scanner-receiver.js","sourceRoot":"","sources":["../../src/scanners/external-scanner-receiver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"external-scanner-receiver.js","sourceRoot":"","sources":["../../src/scanners/external-scanner-receiver.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ export function createSenpiScannerProviders(options) {
|
|
|
43
43
|
});
|
|
44
44
|
return null;
|
|
45
45
|
}
|
|
46
|
-
const state = normalizeClearingHouseState(raw);
|
|
46
|
+
const state = normalizeClearingHouseState(raw, logger);
|
|
47
47
|
if (clearingHouseStaleness.isStale(address, state.time)) {
|
|
48
48
|
logger.warn("getClearingHouseState: discarding stale response", {
|
|
49
49
|
address,
|
|
@@ -208,12 +208,15 @@ function cacheKey(prefix, ...parts) {
|
|
|
208
208
|
* The MCP response is expected to be keyed by venue, for example:
|
|
209
209
|
* `{ main: { crossMarginSummary, withdrawable, assetPositions }, xyz: { ... } }`.
|
|
210
210
|
*/
|
|
211
|
-
function normalizeClearingHouseState(raw) {
|
|
211
|
+
function normalizeClearingHouseState(raw, logger) {
|
|
212
212
|
const unwrapped = unwrapEnvelope(raw);
|
|
213
213
|
const data = (unwrapped && typeof unwrapped === "object" ? unwrapped : {});
|
|
214
214
|
const totals = emptyDexSummaryTotals();
|
|
215
215
|
const time = extractMinClearingHouseTime(data);
|
|
216
216
|
const positions = [];
|
|
217
|
+
// Per-dex sections folded into the aggregate — logged below so a dual-DEX
|
|
218
|
+
// double-count (max() vs sum() regression) is visible at a glance.
|
|
219
|
+
const foldedDexes = [];
|
|
217
220
|
for (const [dexKey, dexValue] of Object.entries(data)) {
|
|
218
221
|
if (!isRecord(dexValue)) {
|
|
219
222
|
continue;
|
|
@@ -222,6 +225,7 @@ function normalizeClearingHouseState(raw) {
|
|
|
222
225
|
// fields with max() (not sum()) so the liquidation-watchdog reads true equity.
|
|
223
226
|
const summary = dexValue.crossMarginSummary;
|
|
224
227
|
foldDexSummary(totals, isRecord(summary) ? summary : undefined, dexValue.withdrawable);
|
|
228
|
+
foldedDexes.push(`${dexKey}(av=${isRecord(summary) ? asNumber(summary.accountValue) : undefined},wd=${asNumber(dexValue.withdrawable)})`);
|
|
225
229
|
const assetPositions = dexValue.assetPositions;
|
|
226
230
|
if (!Array.isArray(assetPositions)) {
|
|
227
231
|
continue;
|
|
@@ -261,6 +265,7 @@ function normalizeClearingHouseState(raw) {
|
|
|
261
265
|
});
|
|
262
266
|
}
|
|
263
267
|
}
|
|
268
|
+
logger?.debug(`clearinghouse ${foldedDexes.join(" ")} -> accountValue=${totals.accountValue} withdrawable=${totals.withdrawable}`);
|
|
264
269
|
return {
|
|
265
270
|
accountValue: totals.accountValue,
|
|
266
271
|
totalMarginUsed: totals.totalMarginUsed,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/scanners/providers/factory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/scanners/providers/factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -248,6 +248,9 @@ function parseClearinghouseState(raw, address, warnedMalformedFields) {
|
|
|
248
248
|
const totals = emptyDexSummaryTotals();
|
|
249
249
|
const time = extractMinClearingHouseTime(raw);
|
|
250
250
|
const positions = [];
|
|
251
|
+
// Per-dex sections folded into the aggregate — logged below so a dual-DEX
|
|
252
|
+
// double-count (max() vs sum() regression) is visible at a glance.
|
|
253
|
+
const foldedDexes = [];
|
|
251
254
|
for (const [dexKey, dexVal] of Object.entries(raw)) {
|
|
252
255
|
if (!isRecord(dexVal))
|
|
253
256
|
continue;
|
|
@@ -257,6 +260,7 @@ function parseClearinghouseState(raw, address, warnedMalformedFields) {
|
|
|
257
260
|
// (not sum()) so margin_pct sizing reads true equity, not 2× the shared pool.
|
|
258
261
|
const summary = dexObj.crossMarginSummary;
|
|
259
262
|
foldDexSummary(totals, isRecord(summary) ? summary : undefined, dexObj.withdrawable);
|
|
263
|
+
foldedDexes.push(`${dexKey}(av=${isRecord(summary) ? asNumber(summary.accountValue) : undefined},wd=${asNumber(dexObj.withdrawable)})`);
|
|
260
264
|
// Positions from assetPositions
|
|
261
265
|
const assetPositions = dexObj.assetPositions;
|
|
262
266
|
if (!Array.isArray(assetPositions))
|
|
@@ -295,6 +299,7 @@ function parseClearinghouseState(raw, address, warnedMalformedFields) {
|
|
|
295
299
|
});
|
|
296
300
|
}
|
|
297
301
|
}
|
|
302
|
+
logger.debug(`clearinghouse ${foldedDexes.join(" ")} -> accountValue=${totals.accountValue} withdrawable=${totals.withdrawable}`, { address });
|
|
298
303
|
return {
|
|
299
304
|
accountValue: totals.accountValue,
|
|
300
305
|
totalMarginUsed: totals.totalMarginUsed,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strategy-state.js","sourceRoot":"","sources":["../../src/strategy/strategy-state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAC;AAWrE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,gCAAgC,EAAE,MAAM,uBAAuB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAC;AAEjD,MAAM,OAAO,iBAAiB;IAkBlB;IAjBD,OAAO,CAAS;IAChB,MAAM,CAAiB;IAExB,cAAc,CAAiC;IAC/C,WAAW,CAA0B;IACrC,WAAW,CAA0B;IACrC,QAAQ,CAA8B;IAE9C;;;;OAIG;IACc,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE5D,YACE,MAAsB,EACd,KAAkB;QAAlB,UAAK,GAAL,KAAK,CAAa;QAE1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,6EAA6E;IAE7E,qBAAqB;QACnB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC;IACxC,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,iBAAiB;QACf,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;IACpD,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,eAAe,CAAC,IAAY,EAAE,GAAY;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAC7B,MAAM,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACjC,MAAM,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC;QAC9C,CAAC,CAAC,CAAC;QACH,IAAI,KAAK;YAAE,OAAO,IAAI,CAAC;QACvB,6FAA6F;QAC7F,gEAAgE;QAChE,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YACnG,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;QACzC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,6EAA6E;IAE7E,KAAK,CAAC,uBAAuB,CAAC,IAAoC;QAChE,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACvE,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;gBAChC,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1C,0EAA0E;gBAC1E,4EAA4E;gBAC5E,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;gBAChC,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,uBAAuB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC9F,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,sEAAsE;YACtE,2EAA2E;YAC3E,yEAAyE;YACzE,0EAA0E;YAC1E,qEAAqE;YACrE,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YAC/E,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAChC,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAqF;QACzG,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACtE,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;YAC3B,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YACvE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7D,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;YAC3B,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YACvE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;gBAC1B,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;YACvB,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YACpE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;IACH,CAAC;IAED,6EAA6E;IAE7E,KAAK,CAAC,OAAO;QACX,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,uBAAuB,EAAE;YAC9B,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,CAAC,YAAY,EAAE;SACpB,CAAC,CAAC;IACL,CAAC;IAED,6EAA6E;IAE7E,KAAK,CAAC,WAAW,CAAC,OAAe;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,MAAc,EAAE,GAAY,EAAE,YAG/D;QACC,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE;YAClD,MAAM;YACN,GAAG;YACH,SAAS,EAAE,YAAY,EAAE,SAAS;YAClC,wBAAwB,EAAE,YAAY,EAAE,wBAAwB;SACjE,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAA6B;QAChD,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAyE;QAC1F,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAe;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,4EAA4E;IAEpE,KAAK,CAAC,iBAAiB;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,OAAO,CAAC,UAAU,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAQpB;QACC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC/B,GAAG,MAAM;YACT,qBAAqB,EAAE,IAAI,CAAC,OAAO;YACnC,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAuC;QAC7D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;YAClC,GAAG,MAAM;YACT,qBAAqB,EAAE,IAAI,CAAC,OAAO;YACnC,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAA2F;QACjH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;YAClC,GAAG,MAAM;YACT,qBAAqB,EAAE,IAAI,CAAC,OAAO;YACnC,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,MAI5B;QACC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;YACvC,GAAG,MAAM;YACT,qBAAqB,EAAE,IAAI,CAAC,OAAO;YACnC,UAAU;SACX,CAAC,CAAC;IACL,CAAC;CACF;AAED,gFAAgF;AAEhF;;;;;;;;;;GAUG;AACH,SAAS,qBAAqB,CAC5B,GAAY,EACZ,KAAwB,EACxB,IAAY,EACZ,OAAe,EACf,MAAmB;IAEnB,mFAAmF;IACnF,iFAAiF;IACjF,MAAM,aAAa,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;IACnE,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;IAC/B,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,uEAAuE,EAAE;gBACnF,OAAO;gBACP,IAAI;gBACJ,KAAK;gBACL,QAAQ,EAAE,GAAG;aACd,CAAC,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,2DAA2D;IAC/E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,uBAAuB,CAC9B,GAA4B,EAC5B,OAAe,EACf,qBAAkC;IAElC,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;IACvC,MAAM,IAAI,GAAG,2BAA2B,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAmB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"strategy-state.js","sourceRoot":"","sources":["../../src/strategy/strategy-state.ts"],"names":[],"mappings":"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"}
|
package/dist/types/scanner.d.ts
CHANGED
|
@@ -35,12 +35,21 @@ export interface Signal {
|
|
|
35
35
|
/** Extra scanner-specific metadata for downstream consumers. */
|
|
36
36
|
meta: Record<string, unknown>;
|
|
37
37
|
/**
|
|
38
|
-
*
|
|
39
|
-
*
|
|
38
|
+
* Per-signal margin as a percent (0–100) of withdrawable. When set, the open
|
|
39
|
+
* action sizes the position to `marginPct% × withdrawable`, overriding config
|
|
40
|
+
* sizing. Same basis + units as config `margin_pct`.
|
|
40
41
|
*/
|
|
41
|
-
|
|
42
|
+
marginPct?: number;
|
|
42
43
|
/** Per-signal leverage override. When set, overrides config default leverage. */
|
|
43
44
|
leverage?: number;
|
|
45
|
+
/**
|
|
46
|
+
* Producer-minted idempotency key carried from intake (the scaffold journal eid).
|
|
47
|
+
* Present on signals built from a supervised external-scanner ingest; absent on
|
|
48
|
+
* internally-produced signals. Observability only — used to grep one signal across
|
|
49
|
+
* the intake→ingest hops; it does not survive the decision engine and never sizes,
|
|
50
|
+
* gates, or routes a trade.
|
|
51
|
+
*/
|
|
52
|
+
signal_id?: string;
|
|
44
53
|
}
|
|
45
54
|
/** Canonical persisted execution result produced by the engine. */
|
|
46
55
|
export interface ScanResult {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../../src/types/scanner.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B,2CAA2C;AAC3C,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAIhC,uEAAuE;AACvE,oBAAY,UAAU;IACpB,EAAE,OAAO;IACT,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,KAAK,UAAU;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,SAAS,EAAE,SAAS,CAAC;IACrB,mEAAmE;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IACnC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B
|
|
1
|
+
{"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../../src/types/scanner.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B,2CAA2C;AAC3C,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAIhC,uEAAuE;AACvE,oBAAY,UAAU;IACpB,EAAE,OAAO;IACT,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,KAAK,UAAU;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,SAAS,EAAE,SAAS,CAAC;IACrB,mEAAmE;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IACnC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,mEAAmE;AACnE,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,SAAS,EAAE,SAAS,CAAC;IACrB,0DAA0D;IAC1D,MAAM,EAAE,UAAU,CAAC;IACnB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,oDAAoD;IACpD,eAAe,EAAE,MAAM,CAAC;IACxB,sCAAsC;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC"}
|
|
@@ -34,9 +34,9 @@ in the source repo and are ported **verbatim** into `scoring.py`.
|
|
|
34
34
|
Sizing rides on each signal's `data{}` so the `OPEN_POSITION` rule action sizes
|
|
35
35
|
identically to the source:
|
|
36
36
|
|
|
37
|
-
- **
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
- **marginPct** = percent of withdrawable (0–100): **20.0**. Dual-DEX equity is
|
|
38
|
+
collapsed via **`max()` not `sum()`** — one cross-margined wallet, two sub-DEX
|
|
39
|
+
views (summing double-counts the shared free balance → 2x sizing).
|
|
40
40
|
- **leverage** = `min(config leverage 3, MAX_LEVERAGE 5)`.
|
|
41
41
|
|
|
42
42
|
MCP tools used (all **read-only**): `market_get_asset_data` (4h candles),
|
|
@@ -109,7 +109,7 @@ map for the next tick.
|
|
|
109
109
|
### Action gate: `decision_mode: llm` → `rule`
|
|
110
110
|
|
|
111
111
|
The source `OPEN_POSITION` action used `decision_mode: llm` with a pass-through
|
|
112
|
-
prompt that copied the signal's `asset`/`direction`/`leverage`/`
|
|
112
|
+
prompt that copied the signal's `asset`/`direction`/`leverage`/`marginPct`
|
|
113
113
|
verbatim and pinned confidence — a rule wearing an LLM costume. This recipe uses
|
|
114
114
|
`decision_mode: rule` directly.
|
|
115
115
|
|
|
@@ -25,7 +25,7 @@ description: >
|
|
|
25
25
|
strategy:
|
|
26
26
|
wallet: "${IGUANA_WALLET}"
|
|
27
27
|
slots: 1 # source slots 1 (iguana emits <=1 signal/tick — two assets, one decision)
|
|
28
|
-
margin_pct: 20 # source margin_pct 20 (% of account per slot; scan.py carries the exact
|
|
28
|
+
margin_pct: 20 # source margin_pct 20 (% of account per slot; scan.py carries the exact marginPct)
|
|
29
29
|
default_leverage: 3 # source leverage 3 (capped at MAX_LEVERAGE 5 in scan.py)
|
|
30
30
|
trading_risk: conservative # source trading_risk conservative
|
|
31
31
|
enabled: true
|
|
@@ -29,9 +29,9 @@ ceiling on purpose.
|
|
|
29
29
|
|
|
30
30
|
Sizing — carried on each signal's data{} so the OPEN_POSITION rule action sizes
|
|
31
31
|
identically to the source:
|
|
32
|
-
-
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
- marginPct = percent of withdrawable (0–100), 20.0. Dual-DEX equity is
|
|
33
|
+
collapsed via max() (NOT sum()) — one cross-margined wallet, two sub-DEX
|
|
34
|
+
views; summing double-counts free balance -> 2x sizing.
|
|
35
35
|
- leverage = min(config leverage 3, MAX_LEVERAGE 5).
|
|
36
36
|
|
|
37
37
|
FLAGS — behaviors that changed under the v2 contract (NOT silent drops):
|
|
@@ -206,13 +206,12 @@ def scan(inputs, ctx):
|
|
|
206
206
|
if thesis is not None and thesis["score"] >= min_score:
|
|
207
207
|
coin = thesis["coin"]
|
|
208
208
|
if coin.upper() not in held_set:
|
|
209
|
-
margin_usd = round(account_value * margin_pct, 2)
|
|
210
209
|
# Stamp the 240s recent-signal dedup so we don't re-emit.
|
|
211
210
|
recent[coin.upper()] = now
|
|
212
211
|
out.append({
|
|
213
212
|
"asset": coin,
|
|
214
213
|
"direction": thesis["direction"],
|
|
215
|
-
"
|
|
214
|
+
"marginPct": round(margin_pct * 100, 2),
|
|
216
215
|
"leverage": float(leverage),
|
|
217
216
|
"data": {
|
|
218
217
|
"score": thesis["score"],
|
|
@@ -41,8 +41,8 @@ Quality-first copy-follow pipeline, run once per tick:
|
|
|
41
41
|
Sizing rides on each signal's `data{}` so the `OPEN_POSITION` rule action sizes
|
|
42
42
|
identically to the source:
|
|
43
43
|
|
|
44
|
-
- **
|
|
45
|
-
|
|
44
|
+
- **marginPct** = percent of withdrawable (0–100): **25.0** (**35.0** if
|
|
45
|
+
`score ≥ 10`). Dual-DEX equity is collapsed via **`max()` not `sum()`** —
|
|
46
46
|
one cross-margined wallet, two sub-DEX views.
|
|
47
47
|
- **leverage** = conviction tier (**≥10 → 10x, ≥8 → 8x, ≥6 → 7x**), clamped to
|
|
48
48
|
the per-asset Hyperliquid venue max via `strategy_get_asset_trading_limits`.
|
|
@@ -30,7 +30,7 @@ description: >
|
|
|
30
30
|
strategy:
|
|
31
31
|
wallet: "${RAPTOR_WALLET}"
|
|
32
32
|
slots: 2 # source slots 2 (raptor still emits <=1 signal/tick — see scan.py)
|
|
33
|
-
margin_pct: 25 # source margin_pct 25 (% of account per slot; scan.py carries the exact
|
|
33
|
+
margin_pct: 25 # source margin_pct 25 (% of account per slot; scan.py carries the exact marginPct)
|
|
34
34
|
default_leverage: 7 # source leverage.default 7 (conviction-tier 7/8/10x in scan.py, clamped per-asset)
|
|
35
35
|
trading_risk: moderate # source trading_risk moderate
|
|
36
36
|
enabled: true
|
|
@@ -36,9 +36,9 @@ emission ceiling on purpose.
|
|
|
36
36
|
|
|
37
37
|
Sizing — carried on each signal's data{} so the OPEN_POSITION rule action sizes
|
|
38
38
|
identically to the source:
|
|
39
|
-
-
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
- marginPct = percent of withdrawable (0–100), 25.0 (35.0 if score >= 10).
|
|
40
|
+
Dual-DEX equity is collapsed via max() (NOT sum()) — one cross-margined
|
|
41
|
+
wallet, two sub-DEX views; summing double-counts free balance.
|
|
42
42
|
- leverage = conviction tier (>=10 -> 10x, >=8 -> 8x, >=6 -> 7x), clamped to
|
|
43
43
|
the per-asset Hyperliquid venue max via strategy_get_asset_trading_limits.
|
|
44
44
|
|
|
@@ -297,9 +297,8 @@ def scan(inputs, ctx):
|
|
|
297
297
|
candidates.sort(key=lambda c: c["score"], reverse=True)
|
|
298
298
|
best = candidates[0]
|
|
299
299
|
if best["score"] >= min_score:
|
|
300
|
-
# Conviction-tier sizing.
|
|
300
|
+
# Conviction-tier sizing: emit percent of withdrawable (0–100).
|
|
301
301
|
margin_pct = margin_pct_high if best["score"] >= 10 else margin_pct_base
|
|
302
|
-
margin_usd = round(account_value * margin_pct, 2)
|
|
303
302
|
requested = scoring.get_leverage_for_score(
|
|
304
303
|
best["score"], scoring.LEVERAGE_TIERS, default_leverage)
|
|
305
304
|
leverage = _get_safe_leverage(ctx, best["asset"], requested)
|
|
@@ -310,7 +309,7 @@ def scan(inputs, ctx):
|
|
|
310
309
|
out.append({
|
|
311
310
|
"asset": best["asset"],
|
|
312
311
|
"direction": best["direction"],
|
|
313
|
-
"
|
|
312
|
+
"marginPct": round(margin_pct * 100, 2),
|
|
314
313
|
"leverage": float(leverage),
|
|
315
314
|
"data": {
|
|
316
315
|
"score": best["score"],
|
|
@@ -78,9 +78,9 @@ emitted at most `min(open_slots, affordable)` signals per tick, where
|
|
|
78
78
|
`affordable` was derived from free margin. In v2 the runtime owns slot count and
|
|
79
79
|
affordability (`strategy.slots` + the `risk.guard_rails`), so `scan()` emits
|
|
80
80
|
**every** candidate that clears `minScore` (after filtering held + recently
|
|
81
|
-
signaled assets) and carries
|
|
82
|
-
on each signal's
|
|
83
|
-
per-tick emission cap moved to the runtime.
|
|
81
|
+
signaled assets) and carries `marginPct` (percent of withdrawable, 0–100) +
|
|
82
|
+
venue-clamped `leverage` on each signal's top level. The signal-gating
|
|
83
|
+
thresholds are unchanged; only the per-tick emission cap moved to the runtime.
|
|
84
84
|
|
|
85
85
|
## Action gate
|
|
86
86
|
|
|
@@ -19,7 +19,7 @@ description: >
|
|
|
19
19
|
strategy:
|
|
20
20
|
wallet: "${SPIDER_SCALP_WALLET}"
|
|
21
21
|
slots: 4 # source maxSlots 4
|
|
22
|
-
margin_pct: 15 # source marginPct 0.15 →
|
|
22
|
+
margin_pct: 15 # source marginPct 0.15 → scan.py emits marginPct 15.0 (% of withdrawable)
|
|
23
23
|
default_leverage: 5 # source scalpMaxLeverage cap (clamped per-asset to HL venue max in scan.py)
|
|
24
24
|
trading_risk: moderate
|
|
25
25
|
enabled: true
|
|
@@ -19,7 +19,7 @@ description: >
|
|
|
19
19
|
strategy:
|
|
20
20
|
wallet: "${SPIDER_SWING_WALLET}"
|
|
21
21
|
slots: 3 # source maxSlots 3
|
|
22
|
-
margin_pct: 28 # source marginPct 0.28 →
|
|
22
|
+
margin_pct: 28 # source marginPct 0.28 → scan.py emits marginPct 28.0 (% of withdrawable)
|
|
23
23
|
default_leverage: 10 # source swingMaxLeverage cap (clamped per-asset to HL venue max in scan.py)
|
|
24
24
|
trading_risk: moderate
|
|
25
25
|
enabled: true
|
|
@@ -24,8 +24,8 @@ What was simplified vs the source (FLAGGED):
|
|
|
24
24
|
qualifying candidates above minScore (held + recently-signaled filtered).
|
|
25
25
|
The signal-GATING thresholds (minScore, held-set, recent-dedup, venue min
|
|
26
26
|
notional) are preserved exactly; only the per-tick emission CAP moves to the
|
|
27
|
-
runtime.
|
|
28
|
-
|
|
27
|
+
runtime. marginPct (percent of withdrawable, 0–100) is carried on each signal
|
|
28
|
+
so the action sizes identically to the source.
|
|
29
29
|
"""
|
|
30
30
|
|
|
31
31
|
import sys
|
|
@@ -301,7 +301,7 @@ def scan(inputs, ctx):
|
|
|
301
301
|
out.append({
|
|
302
302
|
"asset": th["coin"],
|
|
303
303
|
"direction": th["direction"],
|
|
304
|
-
"
|
|
304
|
+
"marginPct": round(margin_pct * 100, 2),
|
|
305
305
|
"leverage": leverage,
|
|
306
306
|
"data": {
|
|
307
307
|
"score": th["score"],
|
|
@@ -13,8 +13,8 @@ recipe's `interval_seconds`.
|
|
|
13
13
|
|
|
14
14
|
| Leg | Thesis (identical signal) | Slots | Margin/slot | Lev | DSL exit |
|
|
15
15
|
|-----------|---------------------------|-------|-------------|-----|----------|
|
|
16
|
-
| `volume` | Funding-fade rotation | 7 |
|
|
17
|
-
| `runners` | Funding-fade rotation | 2 |
|
|
16
|
+
| `volume` | Funding-fade rotation | 7 | 20% withdrawable | 5x | force-close: 10-min hard timeout, phase1 max_loss 50 / retrace 30, **no phase2**, maker exit |
|
|
17
|
+
| `runners` | Funding-fade rotation | 2 | 20% withdrawable | 5x | patient: 4h hard timeout, weak_peak 90m@3 + dead_weight 120m, phase1 max_loss 30 / retrace 8, 5-tier phase2 (5/0·10/35·20/55·35/75·50/85), taker exit |
|
|
18
18
|
|
|
19
19
|
Both legs run the **identical** rotation alpha (same universe, same direction
|
|
20
20
|
logic, same gates). The wallet boundary selects DSL behavior: `volume` prints
|
|
@@ -59,7 +59,7 @@ turbine/
|
|
|
59
59
|
└── scoring.py # pure rotation/direction/spread functions (unit-tested)
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
The per-leg sizing (`
|
|
62
|
+
The per-leg sizing (`marginPct`, `leverage`, `maxSlots`) rides on each recipe's
|
|
63
63
|
`inputs:` block, so the one `scan.py` emits correctly-sized signals for whichever
|
|
64
64
|
leg supervises it.
|
|
65
65
|
|
|
@@ -127,9 +127,10 @@ The source computed `effective_slots = min(maxSlots, account_value /
|
|
|
127
127
|
margin_per_slot)` and emitted at most that many signals per tick. In v2 the
|
|
128
128
|
runtime owns slot count (`strategy.slots`) and affordability (`risk.guard_rails`),
|
|
129
129
|
so `scan()` emits all candidates clearing the gates (held + cooldown + spread),
|
|
130
|
-
carrying `
|
|
131
|
-
at `maxSlots` candidates (the rotation only advances
|
|
132
|
-
scanner doesn't flood the queue; the runtime makes the
|
|
130
|
+
carrying `marginPct` (percent of withdrawable) + `leverage` on each signal's top
|
|
131
|
+
level. It still caps a tick at `maxSlots` candidates (the rotation only advances
|
|
132
|
+
that many times) so the scanner doesn't flood the queue; the runtime makes the
|
|
133
|
+
final open/skip decision.
|
|
133
134
|
|
|
134
135
|
### Kept: non-deterministic `random` picks
|
|
135
136
|
|
|
@@ -161,6 +162,8 @@ v2 recipes use `decision_mode: rule` directly.
|
|
|
161
162
|
### Sizing source of truth
|
|
162
163
|
|
|
163
164
|
The source had margin/slot drift across files (700/1300 in config v3.3 vs
|
|
164
|
-
500/950 producer defaults vs YAML). This port uses **config v3.3
|
|
165
|
-
|
|
166
|
-
|
|
165
|
+
500/950 producer defaults vs YAML). This port uses **config v3.3** proportions:
|
|
166
|
+
volume 7 slots, runners 2 slots, both 5x, `xyzWeight 0.80`, spread main 3 bps /
|
|
167
|
+
xyz 10 bps. Sizing is now `marginPct` (percent of withdrawable) set in each
|
|
168
|
+
recipe's `inputs:` block (default 20); the old fixed-USD amounts can't be
|
|
169
|
+
preserved as a percent without knowing account size.
|
|
@@ -23,7 +23,7 @@ description: >
|
|
|
23
23
|
strategy:
|
|
24
24
|
wallet: "${TURBINE_RUNNERS_WALLET}"
|
|
25
25
|
slots: 2 # source slots.runners 2
|
|
26
|
-
margin_per_slot: 100 # FALLBACK sizing — used only if a signal omits
|
|
26
|
+
margin_per_slot: 100 # FALLBACK sizing — used only if a signal omits marginPct. scan.py emits per-signal marginPct (% of withdrawable, from inputs below), which WINS. TEST 100; prod source margin.runners 1300 (config v3.3)
|
|
27
27
|
default_leverage: 5 # source leverage.runners 5 (clamped per-asset in scan.py)
|
|
28
28
|
trading_risk: moderate # source trading_risk balanced → nearest v2 tier moderate
|
|
29
29
|
enabled: true
|
|
@@ -48,7 +48,7 @@ scanners:
|
|
|
48
48
|
spreadXyzBps: 10 # source spread.xyzBps 10
|
|
49
49
|
# ── per-leg sizing (runners) ──
|
|
50
50
|
leverage: 5 # source leverage.runners 5
|
|
51
|
-
|
|
51
|
+
marginPct: 20 # per-signal % of withdrawable; scan.py emits it TOP-LEVEL → runtime honors it as the EFFECTIVE sizing (overrides margin_per_slot). 20 is an example default; prod source 1300 USD intent must be sized as a percent
|
|
52
52
|
maxSlots: 2 # source slots.runners 2 (per-tick emission ceiling)
|
|
53
53
|
signal_data_schema:
|
|
54
54
|
thesis: { type: string }
|
|
@@ -19,7 +19,7 @@ description: >
|
|
|
19
19
|
strategy:
|
|
20
20
|
wallet: "${TURBINE_VOLUME_WALLET}"
|
|
21
21
|
slots: 7 # source slots.volume 7
|
|
22
|
-
margin_per_slot: 100 # FALLBACK sizing — used only if a signal omits
|
|
22
|
+
margin_per_slot: 100 # FALLBACK sizing — used only if a signal omits marginPct. scan.py emits per-signal marginPct (% of withdrawable, from inputs below), which WINS. TEST 100; prod source margin.volume 700 (config v3.3)
|
|
23
23
|
default_leverage: 5 # source leverage.volume 5 (clamped per-asset in scan.py)
|
|
24
24
|
trading_risk: aggressive # source trading_risk aggressive
|
|
25
25
|
enabled: true
|
|
@@ -44,7 +44,7 @@ scanners:
|
|
|
44
44
|
spreadXyzBps: 10 # source spread.xyzBps 10
|
|
45
45
|
# ── per-leg sizing (volume) ──
|
|
46
46
|
leverage: 5 # source leverage.volume 5
|
|
47
|
-
|
|
47
|
+
marginPct: 20 # per-signal % of withdrawable; scan.py emits it TOP-LEVEL → runtime honors it as the EFFECTIVE sizing (overrides margin_per_slot). 20 is an example default; prod source 700 USD intent must be sized as a percent
|
|
48
48
|
maxSlots: 7 # source slots.volume 7 (per-tick emission ceiling)
|
|
49
49
|
signal_data_schema:
|
|
50
50
|
thesis: { type: string }
|