@backtest/framework
Version:
Backtesting trading strategies in TypeScript / JavaScript
46 lines • 1.74 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.BacktestError = exports.ErrorCode = void 0;
var ErrorCode;
(function (ErrorCode) {
ErrorCode["NotFound"] = "NOT_FOUND";
ErrorCode["ActionFailed"] = "ACTION_FAILED";
ErrorCode["InvalidInput"] = "INVALID_INPUT";
ErrorCode["MissingInput"] = "MISSING_INPUT";
ErrorCode["StrategyError"] = "STRATEGY_ERROR";
ErrorCode["StrategyNotFound"] = "STRATEGY_NOT_FOUND";
ErrorCode["TradeNotProcessed"] = "TRADE_NOT_PROCESSED";
ErrorCode["ExternalAPI"] = "EXTERNAL_API_ERROR";
ErrorCode["InvalidPath"] = "INVALID_PATH";
ErrorCode["ParseError"] = "PARSE_ERROR";
ErrorCode["Conflict"] = "DATA_CONFLICT";
ErrorCode["Access"] = "DATA_ACCESS";
ErrorCode["Insert"] = "DATA_INSERT";
ErrorCode["Delete"] = "DATA_DELETE";
ErrorCode["Update"] = "DATA_UPDATE";
ErrorCode["Retrieve"] = "DATA_RETRIEVE";
})(ErrorCode || (exports.ErrorCode = ErrorCode = {}));
class BacktestError extends Error {
constructor(message, code) {
super(`${message} (Code: ${code})`);
this.code = code;
this.name = this.constructor.name;
Object.setPrototypeOf(this, BacktestError.prototype);
if (Error.captureStackTrace) {
Error.captureStackTrace(this, this.constructor);
}
}
toJSON() {
var _a;
return {
name: this.name,
code: this.code,
message: ((_a = this.message) === null || _a === void 0 ? void 0 : _a.replace(/\s*\(Code: [^)]+\)/, '')) || undefined
};
}
toString() {
return `${this.name}: ${this.message})`;
}
}
exports.BacktestError = BacktestError;
//# sourceMappingURL=error.js.map