diff --git a/.vs/AAWebPlatform/v15/.suo b/.vs/AAWebPlatform/v15/.suo index 30f85c86d..a3d343eb5 100644 Binary files a/.vs/AAWebPlatform/v15/.suo and b/.vs/AAWebPlatform/v15/.suo differ diff --git a/Ecosystem.js b/Ecosystem.js index e2bb15b79..5cbe63d29 100644 --- a/Ecosystem.js +++ b/Ecosystem.js @@ -355,6 +355,104 @@ function newEcosystem() { sas: '?sv=2017-04-17&ss=f&srt=sco&sp=r&se=2018-12-31T19:28:33Z&st=2018-02-22T11:28:33Z&spr=https&sig=YaprSp9zO%2Fsz0nPPWwPMqPACxZTnYhSWKApfun%2Bfez4%3D', fileUri: 'https://' + 'aatom' + '.file.core.windows.net' } + }, + { + codeName: "AAMariam", + displayName: "Mariam", + type: "Trading", + version: { + number: "1.0.0", + status: "Mantained", // Discontinued + }, + products: { + product: [{ + codeName: "Trading History", + displayName: "Mariam Trading History", + description: "General information about Mariam trading history.", + storageAccount: "aamariam", + filePath: "@Exchange/Mariam/dataSet.V1/Output/Trading-Process", + fileName: "Execution.History.json", + exchangeList: { + exchange: [{ + name: "Poloniex", + datetimeRange: { + minDatetime: "2017-02-19 19:15:00.000 GMT+0000", + maxDatetime: "2018-02-13 10:10:00.000 GMT+0000" + } + }] + }, + layers: { + layer: [{ + codeName: "Trading History", + displayName: "Mariam Trading History", + exchangeList: ["Poloniex"], + validPeriods: ["24-hs", "12-hs", "08-hs", "06-hs", "04-hs", "03-hs", "02-hs", "01-hs"], + plotter: { + devTeam: "AAMasters", + repo: "AAMariam-Plotter", + moduleName: "History", + target: "Timeline" + } + }] + } + }, { + codeName: "Trading Details", + displayName: "Mariam Trading Details", + description: "Detailed information about Mariam execution.", + storageAccount: "aamariam", + filePath: "@Exchange/Mariam/dataSet.V1/Output/Trading-Process//@Year/@Month/@Day/@Hour/@Minute", + fileName: "Execution.Context.json", + exchangeList: { + exchange: [{ + name: "Poloniex", + datetimeRange: { + minDatetime: "2017-02-19 19:15:00.000 GMT+0000", + maxDatetime: "2018-02-13 10:10:00.000 GMT+0000" + } + }] + }, + layers: { + layer: [{ + codeName: "Trading Details", + displayName: "Mariam Trading Details", + exchangeList: ["Poloniex"], + validPeriods: ["24-hs", "12-hs", "08-hs", "06-hs", "04-hs", "03-hs", "02-hs", "01-hs"], + plotter: { + devTeam: "AAMasters", + repo: "AAMariam-Plotter", + moduleName: "Details", + target: "Timeline" + } + }] + } + }] + }, + processes: + { + process: [{ + name: "Trading-Process", + description: "Read trades files and generates one minute candles and volumes files for each day." + }] + }, + directDependencies: [], + directDependents: [], + collaboratorsList: [], + github: { + org: "AAMasters", + repos: { + repo: [{ + name: "AABruce", + description: "Produces two data-sets with candles and volumes for all markets at all exchanges.", + openIssues: 0, + openPullRequests: 0, + contributors: 1 + }] + } + }, + storage: { + sas: '?sv=2017-07-29&ss=f&srt=sco&sp=r&se=2018-12-30T23:44:52Z&st=2018-02-25T15:44:52Z&spr=https&sig=0pzOTcVAAOkgH7C4KmA1Rbs15kyjvVC1XFCsLQYjXKU%3D', + fileUri: 'https://' + 'aamariam' + '.file.core.windows.net' + } } ] } diff --git a/FileCloud.js b/FileCloud.js index 7da02dbb7..a9aa41ade 100644 --- a/FileCloud.js +++ b/FileCloud.js @@ -34,6 +34,8 @@ function newFileCloud() { filePath = filePath.replace("@Year", pDatetime.getUTCFullYear()); filePath = filePath.replace("@Month", pad(pDatetime.getUTCMonth() + 1, 2)); filePath = filePath.replace("@Day", pad(pDatetime.getUTCDate(), 2)); + filePath = filePath.replace("@Hour", pad(pDatetime.getUTCHours(), 2)); + filePath = filePath.replace("@Minute", pad(pDatetime.getUTCMinutes(), 2)); } diff --git a/Panels/ChartLayersPanel.js b/Panels/ChartLayersPanel.js index c303819a3..c01488e4d 100644 --- a/Panels/ChartLayersPanel.js +++ b/Panels/ChartLayersPanel.js @@ -14,6 +14,8 @@ function newChartLayersPanel() { OLIVIA_VOLUMES: 'Olivia Volumes', TOM_CANDLE_STAIRS: 'Tom Candle-Stairs', TOM_VOLUME_STAIRS: 'Tom Volume-Stairs', + MARIAM_TRADE_HISTORY: 'Mariam Trades History', + MARIAM_TRADES_DETAILS: 'Mariam Trades Details', ATH: 'All-time Highs and Lows', HIGH_LOWS: 'High and Lows', FORECAST: 'Forecast', @@ -63,7 +65,22 @@ function newChartLayersPanel() { var buttonPosition; - var buttonNames = [LAYER_NAMES.OLIVIA_CANDLES, LAYER_NAMES.OLIVIA_VOLUMES, LAYER_NAMES.TOM_CANDLE_STAIRS, LAYER_NAMES.TOM_VOLUME_STAIRS, LAYER_NAMES.ATH, LAYER_NAMES.HIGH_LOWS, LAYER_NAMES.FORECAST, LAYER_NAMES.ORDER_BOOKS, LAYER_NAMES.CANDLE_STAIRS, LAYER_NAMES.VOLUME_STAIRS, LAYER_NAMES.BUY_SELL_BALANCE, LAYER_NAMES.LINEAR_REGRESION_CURVE]; + var buttonNames = [ + LAYER_NAMES.OLIVIA_CANDLES, + LAYER_NAMES.OLIVIA_VOLUMES, + LAYER_NAMES.TOM_CANDLE_STAIRS, + LAYER_NAMES.MARIAM_TRADES_DETAILS, + LAYER_NAMES.MARIAM_TRADE_HISTORY, + LAYER_NAMES.MARIAM_TRADE_HISTORY, + LAYER_NAMES.ATH, + LAYER_NAMES.HIGH_LOWS, + LAYER_NAMES.FORECAST, + LAYER_NAMES.ORDER_BOOKS, + LAYER_NAMES.CANDLE_STAIRS, + LAYER_NAMES.VOLUME_STAIRS, + LAYER_NAMES.BUY_SELL_BALANCE, + LAYER_NAMES.LINEAR_REGRESION_CURVE + ]; var lastY = 5; buttons = []; diff --git a/TimelineChart.js b/TimelineChart.js index d2a578d1b..e168736f8 100644 --- a/TimelineChart.js +++ b/TimelineChart.js @@ -191,7 +191,7 @@ function newTimelineChart() { layerAAMastersAATomCandleStairs.container.frame.position.x = timelineChart.container.frame.width / 2 - layerAAMastersAATomCandleStairs.container.frame.width / 2; layerAAMastersAATomCandleStairs.container.frame.position.y = timelineChart.container.frame.height / 2 - layerAAMastersAATomCandleStairs.container.frame.height / 2; - layerStatus = chartLayersPanel.getLayerStatus(chartLayersPanel.layerNames.OLIVIA_CANDLES); + layerStatus = chartLayersPanel.getLayerStatus(chartLayersPanel.layerNames.TOM_CANDLE_STAIRS); layerAAMastersAATomCandleStairs.initialize(DEFAULT_EXCHANGE, DEFAULT_MARKET, INITIAL_DATE, INITIAL_TIME_PERIOD, layerStatus, onOliviaCandlesInitialized); @@ -223,7 +223,7 @@ function newTimelineChart() { layerAAMastersAATomVolumeStairs.container.frame.position.x = timelineChart.container.frame.width / 2 - layerAAMastersAATomVolumeStairs.container.frame.width / 2; layerAAMastersAATomVolumeStairs.container.frame.position.y = timelineChart.container.frame.height / 2 - layerAAMastersAATomVolumeStairs.container.frame.height / 2; - layerStatus = chartLayersPanel.getLayerStatus(chartLayersPanel.layerNames.OLIVIA_VOLUMES); + layerStatus = chartLayersPanel.getLayerStatus(chartLayersPanel.layerNames.TOM_VOLUME_STAIRS); layerAAMastersAATomVolumeStairs.initialize(DEFAULT_EXCHANGE, DEFAULT_MARKET, INITIAL_DATE, INITIAL_TIME_PERIOD, layerStatus, onOliviaVolumeStairsInitialized); @@ -238,6 +238,38 @@ function newTimelineChart() { + /* AAMasters AAMariam Trading History */ + + let layerAAMastersAAMariamTradingHistory = newAAMastersAAMariamTradingHistory(); + + function loadVolumeStairs() { + + layerAAMastersAAMariamTradingHistory.container.displacement.parentDisplacement = timelineChart.container.displacement; + layerAAMastersAAMariamTradingHistory.container.zoom.parentZoom = timelineChart.container.zoom; + layerAAMastersAAMariamTradingHistory.container.frame.parentFrame = timelineChart.container.frame; + + layerAAMastersAAMariamTradingHistory.container.parentContainer = timelineChart.container; + + layerAAMastersAAMariamTradingHistory.container.frame.width = timelineChart.container.frame.width * 1; + layerAAMastersAAMariamTradingHistory.container.frame.height = timelineChart.container.frame.height * 1; + + layerAAMastersAAMariamTradingHistory.container.frame.position.x = timelineChart.container.frame.width / 2 - layerAAMastersAAMariamTradingHistory.container.frame.width / 2; + layerAAMastersAAMariamTradingHistory.container.frame.position.y = timelineChart.container.frame.height / 2 - layerAAMastersAAMariamTradingHistory.container.frame.height / 2; + + layerStatus = chartLayersPanel.getLayerStatus(chartLayersPanel.layerNames.MARIAM_TRADE_HISTORY); + + layerAAMastersAAMariamTradingHistory.initialize(DEFAULT_EXCHANGE, DEFAULT_MARKET, INITIAL_DATE, INITIAL_TIME_PERIOD, layerStatus, onOliviaVolumeStairsInitialized); + + function onOliviaVolumeStairsInitialized() { + + addLayers(); + splashScreenNeeded = false; // This is when we dont need a splash screen anymore! + + } + + } + + /* All Time Layer */ /* diff --git a/index.html b/index.html index de53c2552..d3da5c2d3 100644 --- a/index.html +++ b/index.html @@ -10,6 +10,9 @@ + + + diff --git a/server.js b/server.js index 069cfb7ef..2ddfe3e83 100644 --- a/server.js +++ b/server.js @@ -30,7 +30,7 @@ function onContent (error, result) { return; */ -let debugMode = false; +let debugMode = true; let githubPages = new Map; //'use strict';