Final Polishing Iteration done

This commit is contained in:
Luis Fernando Molina committed 2020-08-08 12:52:24 +02:00
1 parent b0add9b805
commit b312313586
13 files changed
+359 -333

No files matched your search

@@ -4,12 +4,9 @@ exports.newTradingStrategy = function newTradingStrategy(bot, logger, tradingEng
*/
const MODULE_NAME = 'Trading Strategy'
let thisObject = {
mantain: mantain,
openStrategy: openStrategy,
closeStrategy: closeStrategy,
updateEnds: updateEnds,
resetTradingEngineDataStructure: resetTradingEngineDataStructure,
updateCounters: updateCounters,
resetStrategy: resetStrategy,
initialize: initialize,
finalize: finalize
}
@@ -26,13 +23,19 @@ exports.newTradingStrategy = function newTradingStrategy(bot, logger, tradingEng
tradingEngine = undefined
}
function mantain() {
resetTradingEngineDataStructure()
updateCounters()
updateEnds()
}
function openStrategy(index, situationName, strategyName) {
tradingEngine.current.strategy.status.value = 'Open'
tradingEngine.current.strategy.serialNumber.value = tradingEngine.current.episode.episodeCounters.strategies.value
tradingEngine.current.strategy.identifier.value = global.UNIQUE_ID()
tradingEngine.current.strategy.begin.value = tradingEngine.current.candle.begin.value
tradingEngine.current.strategy.end.value = tradingEngine.current.candle.end.value
tradingEngine.current.strategy.beginRate.value = tradingEngine.current.candle.min.value
tradingEngine.current.strategy.begin.value = tradingEngine.current.episode.candle.begin.value
tradingEngine.current.strategy.end.value = tradingEngine.current.episode.candle.end.value
tradingEngine.current.strategy.beginRate.value = tradingEngine.current.episode.candle.min.value
tradingEngine.current.strategy.index.value = index
tradingEngine.current.strategy.situationName.value = situationName
@@ -45,28 +48,24 @@ exports.newTradingStrategy = function newTradingStrategy(bot, logger, tradingEng
function closeStrategy(exitType) {
tradingEngine.current.strategy.status.value = 'Closed'
tradingEngine.current.strategy.exitType.value = exitType
tradingEngine.current.strategy.end.value = tradingEngine.current.candle.end.value
tradingEngine.current.strategy.endRate.value = tradingEngine.current.candle.min.value
tradingEngine.current.strategy.end.value = tradingEngine.current.episode.candle.end.value
tradingEngine.current.strategy.endRate.value = tradingEngine.current.episode.candle.min.value
/*
Now that the strategy is closed, it is the right time to move this strategy from current to last at the Trading Engine data structure.
*/
tradingEngineModule.cloneValues(tradingEngine.current.strategy, tradingEngine.last.strategy)
}
function resetStrategy() {
tradingEngine.current.strategy.initialize(tradingEngine.current.strategy)
}
function updateEnds() {
if (tradingEngine.current.strategy.status.value === 'Open') {
tradingEngine.current.strategy.end.value = tradingEngine.current.candle.end.value
tradingEngine.current.strategy.endRate.value = tradingEngine.current.candle.close.value
tradingEngine.current.strategy.end.value = tradingEngine.current.episode.candle.end.value
tradingEngine.current.strategy.endRate.value = tradingEngine.current.episode.candle.close.value
}
}
function resetTradingEngineDataStructure() {
if (tradingEngine.current.strategy.status.value === 'Closed') {
resetStrategy()
tradingEngine.current.strategy.initialize(tradingEngine.current.strategy)
}
}