backtest-kit 2.0.10 → 2.0.12

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/build/index.cjs CHANGED
@@ -32155,33 +32155,35 @@ class NotificationInstance {
32155
32155
  });
32156
32156
  };
32157
32157
  /**
32158
- * Initializes notification system by subscribing to all emitters.
32159
- * Uses singleshot to ensure initialization happens only once.
32160
- * Automatically called on first use.
32158
+ * Subscribes to all notification emitters and returns an unsubscribe function.
32159
+ * Protected against multiple subscriptions using singleshot.
32160
+ *
32161
+ * @returns Unsubscribe function to stop receiving all notification events
32162
+ *
32163
+ * @example
32164
+ * ```typescript
32165
+ * const instance = new NotificationInstance();
32166
+ * const unsubscribe = instance.subscribe();
32167
+ * // ... later
32168
+ * unsubscribe();
32169
+ * ```
32161
32170
  */
32162
- this.waitForInit = functoolsKit.singleshot(async () => {
32163
- // Add bootstrap notification to mark initialization
32164
- this._addNotification({
32165
- type: "bootstrap",
32166
- id: CREATE_KEY_FN(),
32167
- timestamp: Date.now(),
32168
- });
32169
- // Signal events
32170
- signalEmitter.subscribe(this._handleSignal);
32171
- // Partial profit/loss events
32172
- partialProfitSubject.subscribe(this._handlePartialProfit);
32173
- partialLossSubject.subscribe(this._handlePartialLoss);
32174
- // Risk events
32175
- riskSubject.subscribe(this._handleRisk);
32176
- // Done events
32177
- doneLiveSubject.subscribe(this._handleDoneLive);
32178
- doneBacktestSubject.subscribe(this._handleDoneBacktest);
32179
- // Error events
32180
- errorEmitter.subscribe(this._handleError);
32181
- exitEmitter.subscribe(this._handleCriticalError);
32182
- validationSubject.subscribe(this._handleValidationError);
32183
- // Progress events
32184
- progressBacktestEmitter.subscribe(this._handleProgressBacktest);
32171
+ this.enable = functoolsKit.singleshot(() => {
32172
+ const unSignal = signalEmitter.subscribe(this._handleSignal);
32173
+ const unProfit = partialProfitSubject.subscribe(this._handlePartialProfit);
32174
+ const unLoss = partialLossSubject.subscribe(this._handlePartialLoss);
32175
+ const unRisk = riskSubject.subscribe(this._handleRisk);
32176
+ const unDoneLine = doneLiveSubject.subscribe(this._handleDoneLive);
32177
+ const unDoneBacktest = doneBacktestSubject.subscribe(this._handleDoneBacktest);
32178
+ const unError = errorEmitter.subscribe(this._handleError);
32179
+ const unExit = exitEmitter.subscribe(this._handleCriticalError);
32180
+ const unValidation = validationSubject.subscribe(this._handleValidationError);
32181
+ const unProgressBacktest = progressBacktestEmitter.subscribe(this._handleProgressBacktest);
32182
+ const disposeFn = functoolsKit.compose(() => unSignal(), () => unProfit(), () => unLoss(), () => unRisk(), () => unDoneLine(), () => unDoneBacktest(), () => unError(), () => unExit(), () => unValidation(), () => unProgressBacktest());
32183
+ return () => {
32184
+ disposeFn();
32185
+ this.enable.clear();
32186
+ };
32185
32187
  });
32186
32188
  }
32187
32189
  /**
@@ -32231,18 +32233,36 @@ class NotificationInstance {
32231
32233
  clear() {
32232
32234
  this._notifications = [];
32233
32235
  }
32236
+ /**
32237
+ * Unsubscribes from all notification emitters to stop receiving events.
32238
+ * Calls the unsubscribe function returned by subscribe().
32239
+ * If not subscribed, does nothing.
32240
+ *
32241
+ * @example
32242
+ * ```typescript
32243
+ * const instance = new NotificationInstance();
32244
+ * instance.subscribe();
32245
+ * // ... later
32246
+ * instance.unsubscribe();
32247
+ * ```
32248
+ */
32249
+ disable() {
32250
+ if (this.enable.hasValue()) {
32251
+ const unsubscribeFn = this.enable();
32252
+ unsubscribeFn();
32253
+ }
32254
+ }
32234
32255
  }
32235
32256
  /**
32236
32257
  * Public facade for notification operations.
32237
32258
  *
32238
- * Automatically calls waitForInit on each userspace method call.
32239
- * Provides simplified access to notification instance methods.
32259
+ * Automatically subscribes on first use and provides simplified access to notification instance methods.
32240
32260
  *
32241
32261
  * @example
32242
32262
  * ```typescript
32243
32263
  * import { Notification } from "./classes/Notification";
32244
32264
  *
32245
- * // Get all notifications
32265
+ * // Get all notifications (auto-subscribes if not subscribed)
32246
32266
  * const all = await Notification.getData();
32247
32267
  *
32248
32268
  * // Process notifications with type discrimination
@@ -32264,6 +32284,9 @@ class NotificationInstance {
32264
32284
  *
32265
32285
  * // Clear history
32266
32286
  * await Notification.clear();
32287
+ *
32288
+ * // Unsubscribe when done
32289
+ * await Notification.unsubscribe();
32267
32290
  * ```
32268
32291
  */
32269
32292
  class NotificationUtils {
@@ -32273,6 +32296,7 @@ class NotificationUtils {
32273
32296
  }
32274
32297
  /**
32275
32298
  * Returns all notifications in chronological order (newest first).
32299
+ * Automatically subscribes to emitters if not already subscribed.
32276
32300
  *
32277
32301
  * @returns Array of strongly-typed notification objects
32278
32302
  *
@@ -32295,11 +32319,14 @@ class NotificationUtils {
32295
32319
  * ```
32296
32320
  */
32297
32321
  async getData() {
32298
- await this._instance.waitForInit();
32322
+ if (!this._instance.enable.hasValue()) {
32323
+ throw new Error("Notification not initialized. Call enable() before getting data.");
32324
+ }
32299
32325
  return this._instance.getData();
32300
32326
  }
32301
32327
  /**
32302
32328
  * Clears all notification history.
32329
+ * Automatically subscribes to emitters if not already subscribed.
32303
32330
  *
32304
32331
  * @example
32305
32332
  * ```typescript
@@ -32307,9 +32334,34 @@ class NotificationUtils {
32307
32334
  * ```
32308
32335
  */
32309
32336
  async clear() {
32310
- await this._instance.waitForInit();
32337
+ if (!this._instance.enable.hasValue()) {
32338
+ throw new Error("Notification not initialized. Call enable() before clearing data.");
32339
+ }
32311
32340
  this._instance.clear();
32312
32341
  }
32342
+ /**
32343
+ * Unsubscribes from all notification emitters.
32344
+ * Call this when you no longer need to collect notifications.
32345
+ *
32346
+ * @example
32347
+ * ```typescript
32348
+ * await Notification.unsubscribe();
32349
+ * ```
32350
+ */
32351
+ async enable() {
32352
+ this._instance.enable();
32353
+ }
32354
+ /**
32355
+ * Unsubscribes from all notification emitters.
32356
+ * Call this when you no longer need to collect notifications.
32357
+ * @example
32358
+ * ```typescript
32359
+ * await Notification.unsubscribe();
32360
+ * ```
32361
+ */
32362
+ async disable() {
32363
+ this._instance.disable();
32364
+ }
32313
32365
  }
32314
32366
  /**
32315
32367
  * Singleton instance of NotificationUtils for convenient notification access.
package/build/index.mjs CHANGED
@@ -32134,33 +32134,35 @@ class NotificationInstance {
32134
32134
  });
32135
32135
  };
32136
32136
  /**
32137
- * Initializes notification system by subscribing to all emitters.
32138
- * Uses singleshot to ensure initialization happens only once.
32139
- * Automatically called on first use.
32137
+ * Subscribes to all notification emitters and returns an unsubscribe function.
32138
+ * Protected against multiple subscriptions using singleshot.
32139
+ *
32140
+ * @returns Unsubscribe function to stop receiving all notification events
32141
+ *
32142
+ * @example
32143
+ * ```typescript
32144
+ * const instance = new NotificationInstance();
32145
+ * const unsubscribe = instance.subscribe();
32146
+ * // ... later
32147
+ * unsubscribe();
32148
+ * ```
32140
32149
  */
32141
- this.waitForInit = singleshot(async () => {
32142
- // Add bootstrap notification to mark initialization
32143
- this._addNotification({
32144
- type: "bootstrap",
32145
- id: CREATE_KEY_FN(),
32146
- timestamp: Date.now(),
32147
- });
32148
- // Signal events
32149
- signalEmitter.subscribe(this._handleSignal);
32150
- // Partial profit/loss events
32151
- partialProfitSubject.subscribe(this._handlePartialProfit);
32152
- partialLossSubject.subscribe(this._handlePartialLoss);
32153
- // Risk events
32154
- riskSubject.subscribe(this._handleRisk);
32155
- // Done events
32156
- doneLiveSubject.subscribe(this._handleDoneLive);
32157
- doneBacktestSubject.subscribe(this._handleDoneBacktest);
32158
- // Error events
32159
- errorEmitter.subscribe(this._handleError);
32160
- exitEmitter.subscribe(this._handleCriticalError);
32161
- validationSubject.subscribe(this._handleValidationError);
32162
- // Progress events
32163
- progressBacktestEmitter.subscribe(this._handleProgressBacktest);
32150
+ this.enable = singleshot(() => {
32151
+ const unSignal = signalEmitter.subscribe(this._handleSignal);
32152
+ const unProfit = partialProfitSubject.subscribe(this._handlePartialProfit);
32153
+ const unLoss = partialLossSubject.subscribe(this._handlePartialLoss);
32154
+ const unRisk = riskSubject.subscribe(this._handleRisk);
32155
+ const unDoneLine = doneLiveSubject.subscribe(this._handleDoneLive);
32156
+ const unDoneBacktest = doneBacktestSubject.subscribe(this._handleDoneBacktest);
32157
+ const unError = errorEmitter.subscribe(this._handleError);
32158
+ const unExit = exitEmitter.subscribe(this._handleCriticalError);
32159
+ const unValidation = validationSubject.subscribe(this._handleValidationError);
32160
+ const unProgressBacktest = progressBacktestEmitter.subscribe(this._handleProgressBacktest);
32161
+ const disposeFn = compose(() => unSignal(), () => unProfit(), () => unLoss(), () => unRisk(), () => unDoneLine(), () => unDoneBacktest(), () => unError(), () => unExit(), () => unValidation(), () => unProgressBacktest());
32162
+ return () => {
32163
+ disposeFn();
32164
+ this.enable.clear();
32165
+ };
32164
32166
  });
32165
32167
  }
32166
32168
  /**
@@ -32210,18 +32212,36 @@ class NotificationInstance {
32210
32212
  clear() {
32211
32213
  this._notifications = [];
32212
32214
  }
32215
+ /**
32216
+ * Unsubscribes from all notification emitters to stop receiving events.
32217
+ * Calls the unsubscribe function returned by subscribe().
32218
+ * If not subscribed, does nothing.
32219
+ *
32220
+ * @example
32221
+ * ```typescript
32222
+ * const instance = new NotificationInstance();
32223
+ * instance.subscribe();
32224
+ * // ... later
32225
+ * instance.unsubscribe();
32226
+ * ```
32227
+ */
32228
+ disable() {
32229
+ if (this.enable.hasValue()) {
32230
+ const unsubscribeFn = this.enable();
32231
+ unsubscribeFn();
32232
+ }
32233
+ }
32213
32234
  }
32214
32235
  /**
32215
32236
  * Public facade for notification operations.
32216
32237
  *
32217
- * Automatically calls waitForInit on each userspace method call.
32218
- * Provides simplified access to notification instance methods.
32238
+ * Automatically subscribes on first use and provides simplified access to notification instance methods.
32219
32239
  *
32220
32240
  * @example
32221
32241
  * ```typescript
32222
32242
  * import { Notification } from "./classes/Notification";
32223
32243
  *
32224
- * // Get all notifications
32244
+ * // Get all notifications (auto-subscribes if not subscribed)
32225
32245
  * const all = await Notification.getData();
32226
32246
  *
32227
32247
  * // Process notifications with type discrimination
@@ -32243,6 +32263,9 @@ class NotificationInstance {
32243
32263
  *
32244
32264
  * // Clear history
32245
32265
  * await Notification.clear();
32266
+ *
32267
+ * // Unsubscribe when done
32268
+ * await Notification.unsubscribe();
32246
32269
  * ```
32247
32270
  */
32248
32271
  class NotificationUtils {
@@ -32252,6 +32275,7 @@ class NotificationUtils {
32252
32275
  }
32253
32276
  /**
32254
32277
  * Returns all notifications in chronological order (newest first).
32278
+ * Automatically subscribes to emitters if not already subscribed.
32255
32279
  *
32256
32280
  * @returns Array of strongly-typed notification objects
32257
32281
  *
@@ -32274,11 +32298,14 @@ class NotificationUtils {
32274
32298
  * ```
32275
32299
  */
32276
32300
  async getData() {
32277
- await this._instance.waitForInit();
32301
+ if (!this._instance.enable.hasValue()) {
32302
+ throw new Error("Notification not initialized. Call enable() before getting data.");
32303
+ }
32278
32304
  return this._instance.getData();
32279
32305
  }
32280
32306
  /**
32281
32307
  * Clears all notification history.
32308
+ * Automatically subscribes to emitters if not already subscribed.
32282
32309
  *
32283
32310
  * @example
32284
32311
  * ```typescript
@@ -32286,9 +32313,34 @@ class NotificationUtils {
32286
32313
  * ```
32287
32314
  */
32288
32315
  async clear() {
32289
- await this._instance.waitForInit();
32316
+ if (!this._instance.enable.hasValue()) {
32317
+ throw new Error("Notification not initialized. Call enable() before clearing data.");
32318
+ }
32290
32319
  this._instance.clear();
32291
32320
  }
32321
+ /**
32322
+ * Unsubscribes from all notification emitters.
32323
+ * Call this when you no longer need to collect notifications.
32324
+ *
32325
+ * @example
32326
+ * ```typescript
32327
+ * await Notification.unsubscribe();
32328
+ * ```
32329
+ */
32330
+ async enable() {
32331
+ this._instance.enable();
32332
+ }
32333
+ /**
32334
+ * Unsubscribes from all notification emitters.
32335
+ * Call this when you no longer need to collect notifications.
32336
+ * @example
32337
+ * ```typescript
32338
+ * await Notification.unsubscribe();
32339
+ * ```
32340
+ */
32341
+ async disable() {
32342
+ this._instance.disable();
32343
+ }
32292
32344
  }
32293
32345
  /**
32294
32346
  * Singleton instance of NotificationUtils for convenient notification access.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "backtest-kit",
3
- "version": "2.0.10",
3
+ "version": "2.0.12",
4
4
  "description": "A TypeScript library for trading system backtest",
5
5
  "author": {
6
6
  "name": "Petr Tripolsky",
package/types.d.ts CHANGED
@@ -2,9 +2,6 @@ import * as di_scoped from 'di-scoped';
2
2
  import * as functools_kit from 'functools-kit';
3
3
  import { Subject } from 'functools-kit';
4
4
  import { WriteStream } from 'fs';
5
- import { ExchangeName as ExchangeName$1 } from 'src/interfaces/Exchange.interface';
6
- import { FrameName as FrameName$1 } from 'src/interfaces/Frame.interface';
7
- import { StrategyName as StrategyName$1 } from 'src/interfaces/Strategy.interface';
8
5
 
9
6
  /**
10
7
  * Retrieves current backtest timeframe for given symbol.
@@ -7160,16 +7157,6 @@ interface ProgressBacktestNotification {
7160
7157
  processedFrames: number;
7161
7158
  progress: number;
7162
7159
  }
7163
- /**
7164
- * Bootstrap notification.
7165
- * Emitted when the notification system is initialized.
7166
- * Marks the beginning of notification tracking session.
7167
- */
7168
- interface BootstrapNotification {
7169
- type: "bootstrap";
7170
- id: string;
7171
- timestamp: number;
7172
- }
7173
7160
  /**
7174
7161
  * Root discriminated union of all notification types.
7175
7162
  * Type discrimination is done via the `type` field.
@@ -7196,7 +7183,7 @@ interface BootstrapNotification {
7196
7183
  * }
7197
7184
  * ```
7198
7185
  */
7199
- type NotificationModel = SignalOpenedNotification | SignalClosedNotification | PartialProfitNotification | PartialLossNotification | RiskRejectionNotification | SignalScheduledNotification | SignalCancelledNotification | BacktestDoneNotification | LiveDoneNotification | InfoErrorNotification | CriticalErrorNotification | ValidationErrorNotification | ProgressBacktestNotification | BootstrapNotification;
7186
+ type NotificationModel = SignalOpenedNotification | SignalClosedNotification | PartialProfitNotification | PartialLossNotification | RiskRejectionNotification | SignalScheduledNotification | SignalCancelledNotification | BacktestDoneNotification | LiveDoneNotification | InfoErrorNotification | CriticalErrorNotification | ValidationErrorNotification | ProgressBacktestNotification;
7200
7187
 
7201
7188
  /**
7202
7189
  * Unified tick event data for report generation.
@@ -12780,14 +12767,13 @@ declare const Cache: CacheUtils;
12780
12767
  /**
12781
12768
  * Public facade for notification operations.
12782
12769
  *
12783
- * Automatically calls waitForInit on each userspace method call.
12784
- * Provides simplified access to notification instance methods.
12770
+ * Automatically subscribes on first use and provides simplified access to notification instance methods.
12785
12771
  *
12786
12772
  * @example
12787
12773
  * ```typescript
12788
12774
  * import { Notification } from "./classes/Notification";
12789
12775
  *
12790
- * // Get all notifications
12776
+ * // Get all notifications (auto-subscribes if not subscribed)
12791
12777
  * const all = await Notification.getData();
12792
12778
  *
12793
12779
  * // Process notifications with type discrimination
@@ -12809,6 +12795,9 @@ declare const Cache: CacheUtils;
12809
12795
  *
12810
12796
  * // Clear history
12811
12797
  * await Notification.clear();
12798
+ *
12799
+ * // Unsubscribe when done
12800
+ * await Notification.unsubscribe();
12812
12801
  * ```
12813
12802
  */
12814
12803
  declare class NotificationUtils {
@@ -12816,6 +12805,7 @@ declare class NotificationUtils {
12816
12805
  private _instance;
12817
12806
  /**
12818
12807
  * Returns all notifications in chronological order (newest first).
12808
+ * Automatically subscribes to emitters if not already subscribed.
12819
12809
  *
12820
12810
  * @returns Array of strongly-typed notification objects
12821
12811
  *
@@ -12840,6 +12830,7 @@ declare class NotificationUtils {
12840
12830
  getData(): Promise<NotificationModel[]>;
12841
12831
  /**
12842
12832
  * Clears all notification history.
12833
+ * Automatically subscribes to emitters if not already subscribed.
12843
12834
  *
12844
12835
  * @example
12845
12836
  * ```typescript
@@ -12847,6 +12838,25 @@ declare class NotificationUtils {
12847
12838
  * ```
12848
12839
  */
12849
12840
  clear(): Promise<void>;
12841
+ /**
12842
+ * Unsubscribes from all notification emitters.
12843
+ * Call this when you no longer need to collect notifications.
12844
+ *
12845
+ * @example
12846
+ * ```typescript
12847
+ * await Notification.unsubscribe();
12848
+ * ```
12849
+ */
12850
+ enable(): Promise<void>;
12851
+ /**
12852
+ * Unsubscribes from all notification emitters.
12853
+ * Call this when you no longer need to collect notifications.
12854
+ * @example
12855
+ * ```typescript
12856
+ * await Notification.unsubscribe();
12857
+ * ```
12858
+ */
12859
+ disable(): Promise<void>;
12850
12860
  }
12851
12861
  /**
12852
12862
  * Singleton instance of NotificationUtils for convenient notification access.
@@ -14005,11 +14015,11 @@ interface IParseArgsParams {
14005
14015
  /** Trading pair symbol (e.g., "BTCUSDT", "ETHUSDT") */
14006
14016
  symbol: string;
14007
14017
  /** Name of the trading strategy to execute */
14008
- strategyName: StrategyName$1;
14018
+ strategyName: StrategyName;
14009
14019
  /** Name of the exchange to connect to (e.g., "binance", "bybit") */
14010
- exchangeName: ExchangeName$1;
14020
+ exchangeName: ExchangeName;
14011
14021
  /** Timeframe for candle data (e.g., "1h", "15m", "1d") */
14012
- frameName: FrameName$1;
14022
+ frameName: FrameName;
14013
14023
  }
14014
14024
  /**
14015
14025
  * Result of parseArgs function.
@@ -19190,4 +19200,4 @@ declare const backtest: {
19190
19200
  loggerService: LoggerService;
19191
19201
  };
19192
19202
 
19193
- export { ActionBase, type ActivePingContract, Backtest, type BacktestDoneNotification, type BacktestStatisticsModel, type BootstrapNotification, Breakeven, type BreakevenContract, type BreakevenData, Cache, type CandleInterval, type ColumnConfig, type ColumnModel, Constant, type CriticalErrorNotification, type DoneContract, type EntityId, Exchange, ExecutionContextService, type FrameInterval, type GlobalConfig, Heat, type HeatmapStatisticsModel, type IBidData, type ICandleData, type IExchangeSchema, type IFrameSchema, type IHeatmapRow, type IMarkdownDumpOptions, type IOptimizerCallbacks, type IOptimizerData, type IOptimizerFetchArgs, type IOptimizerFilterArgs, type IOptimizerRange, type IOptimizerSchema, type IOptimizerSource, type IOptimizerStrategy, type IOptimizerTemplate, type IOrderBookData, type IPersistBase, type IPositionSizeATRParams, type IPositionSizeFixedPercentageParams, type IPositionSizeKellyParams, type IPublicSignalRow, type IReportDumpOptions, type IRiskActivePosition, type IRiskCheckArgs, type IRiskSchema, type IRiskValidation, type IRiskValidationFn, type IRiskValidationPayload, type IScheduledSignalCancelRow, type IScheduledSignalRow, type ISignalDto, type ISignalRow, type ISizingCalculateParams, type ISizingCalculateParamsATR, type ISizingCalculateParamsFixedPercentage, type ISizingCalculateParamsKelly, type ISizingSchema, type ISizingSchemaATR, type ISizingSchemaFixedPercentage, type ISizingSchemaKelly, type IStrategyPnL, type IStrategyResult, type IStrategySchema, type IStrategyTickResult, type IStrategyTickResultActive, type IStrategyTickResultCancelled, type IStrategyTickResultClosed, type IStrategyTickResultIdle, type IStrategyTickResultOpened, type IStrategyTickResultScheduled, type IWalkerResults, type IWalkerSchema, type IWalkerStrategyResult, type InfoErrorNotification, Live, type LiveDoneNotification, type LiveStatisticsModel, Markdown, MarkdownFileBase, MarkdownFolderBase, type MarkdownName, type MessageModel, type MessageRole, MethodContextService, type MetricStats, Notification, type NotificationModel, Optimizer, Partial$1 as Partial, type PartialData, type PartialEvent, type PartialLossContract, type PartialLossNotification, type PartialProfitContract, type PartialProfitNotification, type PartialStatisticsModel, Performance, type PerformanceContract, type PerformanceMetricType, type PerformanceStatisticsModel, PersistBase, PersistBreakevenAdapter, PersistPartialAdapter, PersistRiskAdapter, PersistScheduleAdapter, PersistSignalAdapter, PositionSize, type ProgressBacktestContract, type ProgressBacktestNotification, type ProgressOptimizerContract, type ProgressWalkerContract, Report, ReportBase, type ReportName, Risk, type RiskContract, type RiskData, type RiskEvent, type RiskRejectionNotification, type RiskStatisticsModel, Schedule, type ScheduleData, type SchedulePingContract, type ScheduleStatisticsModel, type ScheduledEvent, type SignalCancelledNotification, type SignalClosedNotification, type SignalData, type SignalInterval, type SignalOpenedNotification, type SignalScheduledNotification, type TMarkdownBase, type TPersistBase, type TPersistBaseCtor, type TReportBase, type TickEvent, type ValidationErrorNotification, Walker, type WalkerCompleteContract, type WalkerContract, type WalkerMetric, type SignalData$1 as WalkerSignalData, type WalkerStatisticsModel, addActionSchema, addExchangeSchema, addFrameSchema, addOptimizerSchema, addRiskSchema, addSizingSchema, addStrategySchema, addWalkerSchema, commitBreakeven, commitCancel, commitPartialLoss, commitPartialProfit, commitSignalPromptHistory, commitTrailingStop, commitTrailingTake, dumpSignalData, emitters, formatPrice, formatQuantity, get, getActionSchema, getAveragePrice, getBacktestTimeframe, getCandles, getColumns, getConfig, getContext, getDate, getDefaultColumns, getDefaultConfig, getExchangeSchema, getFrameSchema, getMode, getOptimizerSchema, getOrderBook, getRiskSchema, getSizingSchema, getStrategySchema, getSymbol, getWalkerSchema, hasTradeContext, backtest as lib, listExchangeSchema, listFrameSchema, listOptimizerSchema, listRiskSchema, listSizingSchema, listStrategySchema, listWalkerSchema, listenActivePing, listenActivePingOnce, listenBacktestProgress, listenBreakevenAvailable, listenBreakevenAvailableOnce, listenDoneBacktest, listenDoneBacktestOnce, listenDoneLive, listenDoneLiveOnce, listenDoneWalker, listenDoneWalkerOnce, listenError, listenExit, listenOptimizerProgress, listenPartialLossAvailable, listenPartialLossAvailableOnce, listenPartialProfitAvailable, listenPartialProfitAvailableOnce, listenPerformance, listenRisk, listenRiskOnce, listenSchedulePing, listenSchedulePingOnce, listenSignal, listenSignalBacktest, listenSignalBacktestOnce, listenSignalLive, listenSignalLiveOnce, listenSignalOnce, listenValidation, listenWalker, listenWalkerComplete, listenWalkerOnce, listenWalkerProgress, overrideActionSchema, overrideExchangeSchema, overrideFrameSchema, overrideOptimizerSchema, overrideRiskSchema, overrideSizingSchema, overrideStrategySchema, overrideWalkerSchema, parseArgs, roundTicks, set, setColumns, setConfig, setLogger, stop, validate };
19203
+ export { ActionBase, type ActivePingContract, Backtest, type BacktestDoneNotification, type BacktestStatisticsModel, Breakeven, type BreakevenContract, type BreakevenData, Cache, type CandleInterval, type ColumnConfig, type ColumnModel, Constant, type CriticalErrorNotification, type DoneContract, type EntityId, Exchange, ExecutionContextService, type FrameInterval, type GlobalConfig, Heat, type HeatmapStatisticsModel, type IBidData, type ICandleData, type IExchangeSchema, type IFrameSchema, type IHeatmapRow, type IMarkdownDumpOptions, type IOptimizerCallbacks, type IOptimizerData, type IOptimizerFetchArgs, type IOptimizerFilterArgs, type IOptimizerRange, type IOptimizerSchema, type IOptimizerSource, type IOptimizerStrategy, type IOptimizerTemplate, type IOrderBookData, type IPersistBase, type IPositionSizeATRParams, type IPositionSizeFixedPercentageParams, type IPositionSizeKellyParams, type IPublicSignalRow, type IReportDumpOptions, type IRiskActivePosition, type IRiskCheckArgs, type IRiskSchema, type IRiskValidation, type IRiskValidationFn, type IRiskValidationPayload, type IScheduledSignalCancelRow, type IScheduledSignalRow, type ISignalDto, type ISignalRow, type ISizingCalculateParams, type ISizingCalculateParamsATR, type ISizingCalculateParamsFixedPercentage, type ISizingCalculateParamsKelly, type ISizingSchema, type ISizingSchemaATR, type ISizingSchemaFixedPercentage, type ISizingSchemaKelly, type IStrategyPnL, type IStrategyResult, type IStrategySchema, type IStrategyTickResult, type IStrategyTickResultActive, type IStrategyTickResultCancelled, type IStrategyTickResultClosed, type IStrategyTickResultIdle, type IStrategyTickResultOpened, type IStrategyTickResultScheduled, type IWalkerResults, type IWalkerSchema, type IWalkerStrategyResult, type InfoErrorNotification, Live, type LiveDoneNotification, type LiveStatisticsModel, Markdown, MarkdownFileBase, MarkdownFolderBase, type MarkdownName, type MessageModel, type MessageRole, MethodContextService, type MetricStats, Notification, type NotificationModel, Optimizer, Partial$1 as Partial, type PartialData, type PartialEvent, type PartialLossContract, type PartialLossNotification, type PartialProfitContract, type PartialProfitNotification, type PartialStatisticsModel, Performance, type PerformanceContract, type PerformanceMetricType, type PerformanceStatisticsModel, PersistBase, PersistBreakevenAdapter, PersistPartialAdapter, PersistRiskAdapter, PersistScheduleAdapter, PersistSignalAdapter, PositionSize, type ProgressBacktestContract, type ProgressBacktestNotification, type ProgressOptimizerContract, type ProgressWalkerContract, Report, ReportBase, type ReportName, Risk, type RiskContract, type RiskData, type RiskEvent, type RiskRejectionNotification, type RiskStatisticsModel, Schedule, type ScheduleData, type SchedulePingContract, type ScheduleStatisticsModel, type ScheduledEvent, type SignalCancelledNotification, type SignalClosedNotification, type SignalData, type SignalInterval, type SignalOpenedNotification, type SignalScheduledNotification, type TMarkdownBase, type TPersistBase, type TPersistBaseCtor, type TReportBase, type TickEvent, type ValidationErrorNotification, Walker, type WalkerCompleteContract, type WalkerContract, type WalkerMetric, type SignalData$1 as WalkerSignalData, type WalkerStatisticsModel, addActionSchema, addExchangeSchema, addFrameSchema, addOptimizerSchema, addRiskSchema, addSizingSchema, addStrategySchema, addWalkerSchema, commitBreakeven, commitCancel, commitPartialLoss, commitPartialProfit, commitSignalPromptHistory, commitTrailingStop, commitTrailingTake, dumpSignalData, emitters, formatPrice, formatQuantity, get, getActionSchema, getAveragePrice, getBacktestTimeframe, getCandles, getColumns, getConfig, getContext, getDate, getDefaultColumns, getDefaultConfig, getExchangeSchema, getFrameSchema, getMode, getOptimizerSchema, getOrderBook, getRiskSchema, getSizingSchema, getStrategySchema, getSymbol, getWalkerSchema, hasTradeContext, backtest as lib, listExchangeSchema, listFrameSchema, listOptimizerSchema, listRiskSchema, listSizingSchema, listStrategySchema, listWalkerSchema, listenActivePing, listenActivePingOnce, listenBacktestProgress, listenBreakevenAvailable, listenBreakevenAvailableOnce, listenDoneBacktest, listenDoneBacktestOnce, listenDoneLive, listenDoneLiveOnce, listenDoneWalker, listenDoneWalkerOnce, listenError, listenExit, listenOptimizerProgress, listenPartialLossAvailable, listenPartialLossAvailableOnce, listenPartialProfitAvailable, listenPartialProfitAvailableOnce, listenPerformance, listenRisk, listenRiskOnce, listenSchedulePing, listenSchedulePingOnce, listenSignal, listenSignalBacktest, listenSignalBacktestOnce, listenSignalLive, listenSignalLiveOnce, listenSignalOnce, listenValidation, listenWalker, listenWalkerComplete, listenWalkerOnce, listenWalkerProgress, overrideActionSchema, overrideExchangeSchema, overrideFrameSchema, overrideOptimizerSchema, overrideRiskSchema, overrideSizingSchema, overrideStrategySchema, overrideWalkerSchema, parseArgs, roundTicks, set, setColumns, setConfig, setLogger, stop, validate };