From 2539bfd21f6504e3c188296417cb3d93b0a26296 Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Wed, 21 Mar 2018 12:08:30 +0100 Subject: [PATCH] findLastCandleCloseValue migrated to alpha --- .vs/AABruce-Indicator-Bot/v15/.suo | Bin 26112 -> 27648 bytes One-Min-Daily-Candles-Volumes/User.bot.js | 107 +++++++++++----------- 2 files changed, 55 insertions(+), 52 deletions(-) diff --git a/.vs/AABruce-Indicator-Bot/v15/.suo b/.vs/AABruce-Indicator-Bot/v15/.suo index 1f23a93a468ed30f873074efa5b0d820992c623b..8c6bdbc6a32cf076a01d5723956ead4cc40d2d4f 100644 GIT binary patch delta 557 zcmZoT!`N_xae{#?0}Kc-Ft7pHj6nSF|Ns9WVaClDS@anvCbUdq%3*!5>+chm&4q0J zjFVVo6jgxITtEy|`JV?$^8sl!AQl7hCm-aNW>lSgk;R;q1IQQHJeB1-BkPCvo)y`o$wvfjHt`){T6~0ukq4v%WCRFI zW)xM~{6(IJX^{fcCXFMEJQ6@jIj91VB&!sV!?O9O`e}$9JBHlkpW^-;$ikaTBzhPZ z$uLb)@!$Xj6x^N?l^(`P5*{2d2Y@XHDc&T)#59>n#SK$ANMh9{6(GsyzPrFL77iVp~_xOPx-AAcRf{qPqi8oT2!cyvS?3>>tNNrSMLD zwKOS?`K|83`g^jHPnq2w163}?_KA72(I{r3I7D%Tyq|oKyw7adJC+`%v_Q^B5T=VJ zNZ&}!#p4TJRjt7AUWYs5jCpH<|@0QO>QTVUl(y zA|kBd%{9Q!eY3~ji8&T){Gp7OtApn0vPmKs*RnZO18qfWT+VozhV%=qw3wzHew??R zps)_fev8I)8*n@;n@$^ao=`V|TRB=N^YrCf+VM>BkgqRTz6n3$`_31RhqFKU9|)~; z@r&{^%K7zDI3-6+ZS}mzcUsueRScXpY{@EmqjhZ)k$e&zHV|GTgzwfg55ir>1EJ^E gLy^H)G=Zz3S#dJipV3hvIu}dS#XPMOU2L7J7n7*$=Kufz diff --git a/One-Min-Daily-Candles-Volumes/User.bot.js b/One-Min-Daily-Candles-Volumes/User.bot.js index 7b76909cc..afca4cd0c 100644 --- a/One-Min-Daily-Candles-Volumes/User.bot.js +++ b/One-Min-Daily-Candles-Volumes/User.bot.js @@ -315,7 +315,7 @@ let dateForPath = lastCandleFile.getUTCFullYear() + '/' + utilities.pad(lastCandleFile.getUTCMonth() + 1, 2) + '/' + utilities.pad(lastCandleFile.getUTCDate(), 2); let filePath = EXCHANGE_NAME + "/Output/" + CANDLES_FOLDER_NAME + '/' + CANDLES_ONE_MIN + '/' + dateForPath; - bruceFileStorage.getTextFile(filePath, fileName, onFileReceived, true); + bruceFileStorage.getTextFile(filePath, fileName, onFileReceived); function onFileReceived(err, text) { @@ -363,7 +363,7 @@ let dateForPath = lastCandleFile.getUTCFullYear() + '/' + utilities.pad(lastCandleFile.getUTCMonth() + 1, 2) + '/' + utilities.pad(lastCandleFile.getUTCDate(), 2); let filePath = EXCHANGE_NAME + "/Output/" + CANDLES_FOLDER_NAME + '/' + CANDLES_ONE_MIN + '/' + dateForPath; - bruceFileStorage.getTextFile(filePath, fileName, onFileReceived, true); + bruceFileStorage.getTextFile(filePath, fileName, onFileReceived); function onFileReceived(err, text) { @@ -423,28 +423,23 @@ if ((year === firstTradeFile.getUTCFullYear() && parseInt(month) === firstTradeFile.getUTCMonth() + 1)) { /* - We are at the begining of the market, so we will set everyting to build the first candle. - */ - const logText = "[INFO] 'findLastCandleCloseValue' - Begining of the market detected for market " + market.assetA + '_' + market.assetB + " . lastCandleClose = " + lastCandleClose; - logger.write(logText); - console.log(logText); + if (FULL_LOG === true) { logger.write("[INFO] start -> findPreviousContent -> Begining of the market detected."); } + if (FULL_LOG === true) { logger.write("[INFO] start -> findPreviousContent -> Entering market = " + JSON.stringify(market)); } + if (FULL_LOG === true) { logger.write("[INFO] start -> findPreviousContent -> lastCandleClose = " + lastCandleClose); } lastCandleFile = new Date(firstTradeFile.getUTCFullYear() + "-" + (firstTradeFile.getUTCMonth() + 1) + "-" + firstTradeFile.getUTCDate() + " " + "00:00" + GMT_SECONDS); lastCandleFile = new Date(lastCandleFile.valueOf() - ONE_DAY_IN_MILISECONDS); lastCandleClose = 0; - buildCandles(); } else { /* - We are not at the begining of the market, so we need scan backwards the trade files until we find a non empty one and get the last trade. - */ let date = new Date(processDate.valueOf()); @@ -453,58 +448,66 @@ function loopStart() { - date = new Date(date.valueOf() - 60 * 1000); + try { - let dateForPath = date.getUTCFullYear() + '/' + utilities.pad(date.getUTCMonth() + 1, 2) + '/' + utilities.pad(date.getUTCDate(), 2) + '/' + utilities.pad(date.getUTCHours(), 2) + '/' + utilities.pad(date.getUTCMinutes(), 2); - let fileName = market.assetA + '_' + market.assetB + ".json" - let filePath = EXCHANGE_NAME + "/Output/" + TRADES_FOLDER_NAME + '/' + dateForPath; + if (FULL_LOG === true) { logger.write("[INFO] start -> findPreviousContent -> loopStart -> Entering function."); } - charlyFileStorage.getTextFile(filePath, fileName, onFileReceived, true); + date = new Date(date.valueOf() - 60 * 1000); - function onFileReceived(err, text) { + let dateForPath = date.getUTCFullYear() + '/' + utilities.pad(date.getUTCMonth() + 1, 2) + '/' + utilities.pad(date.getUTCDate(), 2) + '/' + utilities.pad(date.getUTCHours(), 2) + '/' + utilities.pad(date.getUTCMinutes(), 2); + let fileName = market.assetA + '_' + market.assetB + ".json" + let filePath = EXCHANGE_NAME + "/Output/" + TRADES_FOLDER_NAME + '/' + dateForPath; - let tradesFile; + charlyFileStorage.getTextFile(filePath, fileName, onFileReceived); - try { + function onFileReceived(err, text) { - if (FULL_LOG === true) { logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> Entering function."); } + let tradesFile; + + try { + + if (FULL_LOG === true) { logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> Entering function."); } + + if (err.result !== global.DEFAULT_OK_RESPONSE.result) { + logger.write("[ERROR] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> err = " + err.message); + callBackFunction(err); + return; + } + + if (LOG_FILE_CONTENT === true) { + logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> text = " + text); + } + + tradesFile = JSON.parse(text); + + if (tradesFile.length > 0) { + + lastCandleClose = tradesFile[tradesFile.length - 1][2]; // Position 2 is the rate at which the trade was executed. + + logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> Trades found at " + filePath + " for market " + market.assetA + '_' + market.assetB + "."); + logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> lastCandleClose = " + lastCandleClose); + + buildCandles(); + + } else { + + logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> NO Trades found at " + filePath + " for market " + market.assetA + '_' + market.assetB + "."); + + loopStart(); + } + + } catch (err) { - if (err.result !== global.DEFAULT_OK_RESPONSE.result) { logger.write("[ERROR] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> err = " + err.message); - callBackFunction(err); + logger.write("[ERROR] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> filePath = " + filePath); + logger.write("[HINT] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> Empty or corrupt volume file found."); + callBackFunction(global.DEFAULT_FAIL_RESPONSE); return; } - - if (LOG_FILE_CONTENT === true) { - logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> text = " + text); - } - - tradesFile = JSON.parse(text); - - if (tradesFile.length > 0) { - - lastCandleClose = tradesFile[tradesFile.length - 1][2]; // Position 2 is the rate at which the trade was executed. - - logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> Trades found at " + filePath + " for market " + market.assetA + '_' + market.assetB + "."); - logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> lastCandleClose = " + lastCandleClose); - - buildCandles(); - - } else { - - logger.write("[INFO] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> NO Trades found at " + filePath + " for market " + market.assetA + '_' + market.assetB + "."); - - loopStart(); - } - - } catch (err) { - - logger.write("[ERROR] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> err = " + err.message); - logger.write("[ERROR] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> filePath = " + filePath); - logger.write("[HINT] start -> findLastCandleCloseValue -> loopStart -> onFileReceived -> Empty or corrupt volume file found."); - callBackFunction(global.DEFAULT_FAIL_RESPONSE); - return; } + } catch (err) { + logger.write("[ERROR] start -> findLastCandleCloseValue -> loopStart -> err = " + err.message); + callBackFunction(global.DEFAULT_FAIL_RESPONSE); } } } @@ -679,7 +682,7 @@ let fileName = market.assetA + '_' + market.assetB + ".json" let filePath = EXCHANGE_NAME + "/Output/" + TRADES_FOLDER_NAME + '/' + dateForPath; - charlyFileStorage.getTextFile(filePath, fileName, onFileReceived, true); + charlyFileStorage.getTextFile(filePath, fileName, onFileReceived); function onFileReceived(err, text) {