@backtest/command-line
Version:
This project is a CLI build around Backtest, a library for trading developers
63 lines • 2.68 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const portals_1 = require("./helpers/portals");
const headers_1 = require("./infra/headers");
const colors_1 = require("./infra/colors");
const main_1 = require("./portals/historical-data/main");
const main_2 = require("./portals/strategies/main");
const view_results_1 = require("./portals/results/view-results");
function main() {
return __awaiter(this, void 0, void 0, function* () {
console.clear();
let exit = false;
let portalReturn = { error: false, data: '' };
const choices = [
'📚 Historical Candle Data',
'💎 Trading Strategies',
'📜 View Saved Trading Results',
(0, colors_1.colorBack)('👈 Exit')
];
while (!exit) {
(0, headers_1.headerMain)();
yield (0, portals_1.handlePortalReturn)(portalReturn);
const responseCLI = yield (0, portals_1.interactCLI)({
type: 'autocomplete',
message: 'Choose what to do:',
choices
});
if (responseCLI.includes('📚'))
portalReturn = yield (0, main_1.mainHistoricalDataPortal)();
else if (responseCLI.includes('💎'))
portalReturn = yield (0, main_2.mainStrategyPortal)();
else if (responseCLI.includes('📜'))
portalReturn = yield (0, view_results_1.viewResultsPortal)();
else if (responseCLI.includes('👈')) {
exit = true;
portalReturn.error = false;
portalReturn.data = '';
}
console.clear();
}
console.log((0, colors_1.colorBye)(`See you next time, bye bye ✨`));
console.log();
});
}
main()
.catch((error) => {
console.log(error);
process.exit(1);
})
.finally(() => {
process.exit(0);
});
//# sourceMappingURL=main.js.map
;