From 61a26c7158f07adab0fc3ed8f2b340779cf7ee8d Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Sat, 8 Aug 2020 11:00:24 +0200 Subject: [PATCH] mantain standarized --- LowFrequencyTrading/TradingEngine.js | 6 +++++- LowFrequencyTrading/TradingEpisode.js | 12 ++++++++---- LowFrequencyTrading/TradingPosition.js | 7 +++++++ LowFrequencyTrading/TradingSimulation.js | 8 ++++---- LowFrequencyTrading/TradingStages.js | 8 +------- 5 files changed, 25 insertions(+), 16 deletions(-) diff --git a/LowFrequencyTrading/TradingEngine.js b/LowFrequencyTrading/TradingEngine.js index 435a53619..965bf5b83 100644 --- a/LowFrequencyTrading/TradingEngine.js +++ b/LowFrequencyTrading/TradingEngine.js @@ -5,10 +5,10 @@ exports.newTradingEngine = function newTradingEngine(bot, logger) { */ const MODULE_NAME = 'Trading Engine' let thisObject = { + mantain: mantain, getNodeById: getNodeById, cloneValues: cloneValues, setCurrentCandle: setCurrentCandle, - updateDistanceToEventsCounters: updateDistanceToEventsCounters, initialize: initialize, finalize: finalize } @@ -39,6 +39,10 @@ exports.newTradingEngine = function newTradingEngine(bot, logger) { nodesMap = undefined } + function mantain() { + updateDistanceToEventsCounters() + } + function getNodeById(NodeId) { return nodesMap.get(NodeId) } diff --git a/LowFrequencyTrading/TradingEpisode.js b/LowFrequencyTrading/TradingEpisode.js index 061b4dafe..cff7dfdd4 100644 --- a/LowFrequencyTrading/TradingEpisode.js +++ b/LowFrequencyTrading/TradingEpisode.js @@ -4,13 +4,10 @@ exports.newTradingEpisode = function newTradingEpisode(bot, logger) { */ const MODULE_NAME = 'Trading Episode' let thisObject = { + mantain: mantain, openEpisode: openEpisode, updateExitType: updateExitType, closeEpisode: closeEpisode, - updateEnds: updateEnds, - resetTradingEngineDataStructure: resetTradingEngineDataStructure, - updateCounters: updateCounters, - updateStatistics: updateStatistics, calculateResults: calculateResults, calculateStatistics: calculateStatistics, initialize: initialize, @@ -35,6 +32,13 @@ exports.newTradingEpisode = function newTradingEpisode(bot, logger) { sessionParameters = undefined } + function mantain() { + resetTradingEngineDataStructure() + updateCounters() + updateStatistics() + updateEnds() + } + function openEpisode() { /* This function is called each time the simulation starts. That does not mean the Episode diff --git a/LowFrequencyTrading/TradingPosition.js b/LowFrequencyTrading/TradingPosition.js index 2c80908b1..acfe51f6e 100644 --- a/LowFrequencyTrading/TradingPosition.js +++ b/LowFrequencyTrading/TradingPosition.js @@ -4,6 +4,7 @@ exports.newTradingPosition = function newTradingPosition(bot, logger, tradingEng */ const MODULE_NAME = 'Trading Position' let thisObject = { + mantain: mantain, openPosition: openPosition, closingPosition: closingPosition, closePosition: closePosition, @@ -37,6 +38,12 @@ exports.newTradingPosition = function newTradingPosition(bot, logger, tradingEng sessionParameters = undefined } + function mantain() { + resetTradingEngineDataStructure() + updateCounters() + updateEnds() + } + function openPosition(situationName) { /* Recording the opening at the Trading Engine Data Structure */ diff --git a/LowFrequencyTrading/TradingSimulation.js b/LowFrequencyTrading/TradingSimulation.js index 092c77b90..35da754cd 100644 --- a/LowFrequencyTrading/TradingSimulation.js +++ b/LowFrequencyTrading/TradingSimulation.js @@ -140,11 +140,11 @@ exports.newTradingSimulation = function newTradingSimulation(bot, logger, UTILIT /* Do the stuff needed previous to the run */ tradingSystemModule.mantain() - /* Episode Counters and Statistics */ - tradingEpisodeModule.updateCounters() - tradingEpisodeModule.updateStatistics() + /* Episode Counters and Statistics update */ + tradingEpisodeModule.mantain() - tradingEngineModule.updateDistanceToEventsCounters() + /* Run your maintaince procedure */ + tradingEngineModule.mantain() /* Run one cycle of the Trading System*/ await tradingSystemModule.run() diff --git a/LowFrequencyTrading/TradingStages.js b/LowFrequencyTrading/TradingStages.js index 350865b9d..8487b3d83 100644 --- a/LowFrequencyTrading/TradingStages.js +++ b/LowFrequencyTrading/TradingStages.js @@ -84,7 +84,7 @@ exports.newTradingStages = function newTradingStages(bot, logger, tradingEngineM } function mantain() { - mantainPositions() + tradingPositionModule.mantain() tradingStrategyModule.mantain() mantainStages() mantainOrders() @@ -95,12 +95,6 @@ exports.newTradingStages = function newTradingStages(bot, logger, tradingEngineM updateEnds() } - function mantainPositions() { - tradingPositionModule.resetTradingEngineDataStructure() - tradingPositionModule.updateCounters() - tradingPositionModule.updateEnds() - } - function mantainOrders() { /* Reset All Exchange Orders that are on Closed status, to their initial value */ if (tradingEngine.current.strategy.index.value === tradingEngine.current.strategy.index.config.initialValue) { return }