From 89007c6e349850e7cb817a16257552fcc75408cb Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Sat, 10 Mar 2018 16:19:43 +0100 Subject: [PATCH] New Mini Release - All working with available Balance Checks --- .vs/AACloudPlatform/v15/.suo | Bin 76800 -> 75776 bytes Assistant.js | 26 +++++++++++++------------- this.vm.config.json | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.vs/AACloudPlatform/v15/.suo b/.vs/AACloudPlatform/v15/.suo index b38028a8ade2be38f0535a6f89e652ec631e78ba..403f0e921346276673503e0c18d776a0d5ebc454 100644 GIT binary patch delta 2623 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 diff --git a/Assistant.js b/Assistant.js index aa9ffe674..d173949f6 100644 --- a/Assistant.js +++ b/Assistant.js @@ -56,7 +56,7 @@ let candleArray = datasource.candlesMap.get("01-min"); // In this version of the platform, this array will contain the las 10 candles. let candle = candleArray[candleArray.length - 1]; // The last candle of the 10 candles array for the 1 min Time Period. - let marketRate = candle.close; + marketRate = candle.close; /* Now we verify that this candle is not too old. Lets say no more than 2 minutes old. This could happen if the datasets for @@ -546,7 +546,7 @@ logger.write("[ERROR] putPosition -> Input Validations -> Available Balance = " + context.executionContext.availableBalance.assetA); let err = { - result: global.DEFAULT_FAIL_RESPONSE.result; + result: global.DEFAULT_FAIL_RESPONSE.result, message: 'pAmountA is grater than the Available Balance.' }; @@ -564,7 +564,7 @@ logger.write("[ERROR] putPosition -> Input Validations -> Available Balance = " + context.executionContext.availableBalance.assetB); let err = { - result: global.DEFAULT_FAIL_RESPONSE.result; + result: global.DEFAULT_FAIL_RESPONSE.result, message: 'pAmountB is grater than the Available Balance.' }; @@ -576,12 +576,12 @@ if (pAmountB * pRate !== pAmountA) { logger.write("[ERROR] putPosition -> Input Validations -> pAmountB * pRate !== pAmountA."); - logger.write("[ERROR] putPosition -> Input Validations -> pAmountB = " + pAmountA); + logger.write("[ERROR] putPosition -> Input Validations -> pAmountA = " + pAmountA); logger.write("[ERROR] putPosition -> Input Validations -> pAmountB = " + pAmountB); - logger.write("[ERROR] putPosition -> Input Validations -> pAmountB = " + pRate); + logger.write("[ERROR] putPosition -> Input Validations -> pRate = " + pRate); let err = { - result: global.DEFAULT_FAIL_RESPONSE.result; + result: global.DEFAULT_FAIL_RESPONSE.result, message: 'pAmountB * pRate !== pAmountA' }; @@ -631,12 +631,12 @@ if (position.type === 'buy') { - context.executionContext.availableBalance.assetA = context.executionContext.availableBalance.assetA - trade.amountA; + context.executionContext.availableBalance.assetA = context.executionContext.availableBalance.assetA - pAmountA; } if (position.type === 'sell') { - context.executionContext.availableBalance.assetB = context.executionContext.availableBalance.assetB - trade.amountB; + context.executionContext.availableBalance.assetB = context.executionContext.availableBalance.assetB - pAmountB; } callBackFunction(global.DEFAULT_OK_RESPONSE); @@ -703,9 +703,9 @@ for (let i = 0; i < context.executionContext.positions.length; i++) { - if (position.id === pPosition.id) { + if (context.executionContext.positions[i].id === pPosition.id) { - position = newPosition; + context.executionContext.positions[i] = newPosition; break; } @@ -780,8 +780,8 @@ } - context.newHistoryRecord.buyAvgRate = sumBuyWeightedRates / sumBuyWeights; - context.newHistoryRecord.sellAvgRate = sumSellWeightedRates / sumSellWeights; + context.newHistoryRecord.buyAvgRate = (sumBuyWeightedRates / sumBuyWeights || 0); + context.newHistoryRecord.sellAvgRate = (sumSellWeightedRates / sumSellWeights || 0); } @@ -806,6 +806,6 @@ } function getMarketRate() { - return thisObject.marketRate; + return marketRate; } }; \ No newline at end of file diff --git a/this.vm.config.json b/this.vm.config.json index 1a59ed415..aa2288eab 100644 --- a/this.vm.config.json +++ b/this.vm.config.json @@ -2,5 +2,5 @@ "bot": { "path": "../Bots/AAMasters/AAMariam-Trading-Bot" }, - "stopGracefully": "true" + "stopGracefully": "false" } \ No newline at end of file