Some comments and config moved to AAPlatform

This commit is contained in:
Luis Fernando Molina committed 2018-03-04 15:11:02 +01:00
1 parent 96d14610bd
commit 57d988fc25
4 files changed
+30 -266

No files matched your search

Binary file not shown.
-3
View File
@@ -113,9 +113,6 @@
<Compile Include="ViewPort.js" />
<Compile Include="VolumeBar.js" />
<Compile Include="Zoom.js" />
<Content Include="ecosystem.json">
<SubType>Code</SubType>
</Content>
<Content Include="index.html" />
<Content Include="package.json" />
<Content Include="README.md" />
-255
View File
@@ -1,255 +0,0 @@
{
"devTeams": [
{
"codeName": "AAMasters",
"displayName": "AA Masters",
"organization": {
"name": "AAMasters",
"type": "Open Source Community",
"displayName": "AA Masters",
"location": "Global",
"leader": "Luis Molina",
"logo": "AAMasters.jpg"
},
"teamMembers": [
{
"member": {
"displayName": "Luis Molina",
"githubUsername": "Luis-Fernando-Molina",
"profilePicture": "Luis.jpg"
}
}
],
"bots": [
{
"codeName": "AAOlivia",
"displayName": "Olivia",
"type": "Indicator",
"version": {
"number": "1.0.0",
"status": "Mantained"
},
"products": [
{
"codeName": "Candles",
"displayName": "Market Candles per Period",
"description": "Two sets of files per period that contains candles.",
"storageAccount": "aaolivia",
"sets": [
{
"type": "Market Files",
"validPeriods": [ "24-hs", "12-hs", "08-hs", "06-hs", "04-hs", "03-hs", "02-hs", "01-hs" ],
"filePath": "@Exchange/Output/Candles/Multi-Period-Market/@Period",
"fileName": "@AssetA_@AssetB.json"
},
{
"type": "Daily Files",
"validPeriods": [ "45-min", "40-min", "30-min", "20-min", "15-min", "10-min", "05-min", "04-min", "03-min", "02-min", "01-min" ],
"filePath": "@Exchange/Output/Candles/Multi-Period-Daily/@Period/@Year/@Month/@Day",
"fileName": "@AssetA_@AssetB.json"
}
],
"exchangeList": [
{
"name": "Poloniex"
}
]
,
"plotter": {
"devTeam": "AAMasters",
"repo": "Plotters-Candles-Volumes",
"moduleName": "Candles"
}
},
{
"codeName": "Volumes",
"displayName": "Buy and Sell Volumes",
"description": "Two sets of files per period that contains buy and sell volumes.",
"storageAccount": "aaolivia",
"sets": [
{
"type": "Market Files",
"validPeriods": [ "24-hs", "12-hs", "08-hs", "06-hs", "04-hs", "03-hs", "02-hs", "01-hs" ],
"filePath": "@Exchange/Output/Volumes/Multi-Period-Market/@Period",
"fileName": "@AssetA_@AssetB.json"
},
{
"type": "Daily Files",
"validPeriods": [ "45-min", "40-min", "30-min", "20-min", "15-min", "10-min", "05-min", "04-min", "03-min", "02-min", "01-min" ],
"filePath": "@Exchange/Output/Volumes/Multi-Period-Daily/@Period/@Year/@Month/@Day",
"fileName": "@AssetA_@AssetB.json"
}
],
"exchangeList": [
{
"name": "Poloniex"
}
],
"plotter": {
"devTeam": "AAMasters",
"repo": "Plotters-Candles-Volumes",
"moduleName": "Volumes"
}
}
],
"storage": {
"sas": "?sv=2017-04-17&ss=f&srt=sco&sp=rl&se=2018-12-31T02:34:32Z&st=2018-02-01T18:34:32Z&spr=https,http&sig=24UJjGDVpPrHjhBoZtt3iKj4sxgenfSV4VTJD2v0q1U%3D",
"fileUri": "https://aaolivia.file.core.windows.net"
}
},
{
"codeName": "AATom",
"displayName": "Tom",
"type": "Indicator",
"version": {
"number": "1.0.0",
"status": "Mantained"
},
"products": [
{
"codeName": "Candle-Stairs",
"displayName": "Candle-Stairs Patters",
"description": "Two sets of files per period that contains candle-stairs patterns.",
"storageAccount": "aatom",
"sets": [
{
"type": "Market Files",
"validPeriods": [ "24-hs", "12-hs", "08-hs", "06-hs", "04-hs", "03-hs", "02-hs", "01-hs" ],
"filePath": "@Exchange/Tom/dataSet.V1/Output/Candle-Stairs/Multi-Period-Market/@Period",
"fileName": "@AssetA_@AssetB.json"
},
{
"type": "Daily Files",
"validPeriods": [ "45-min", "40-min", "30-min", "20-min", "15-min", "10-min", "05-min", "04-min", "03-min", "02-min", "01-min" ],
"filePath": "@Exchange/Tom/dataSet.V1/Output/Candle-Stairs/Multi-Period-Daily/@Period/@Year/@Month/@Day",
"fileName": "@AssetA_@AssetB.json"
}
],
"exchangeList": [
{
"name": "Poloniex"
}
],
"plotter": {
"devTeam": "AAMasters",
"repo": "Plotters-Stairs-Patterns",
"moduleName": "CandleStairs"
}
},
{
"codeName": "Volume-Stairs",
"displayName": "Volume-Stairs Patters",
"description": "Two sets of files per period that contains volume-stairs patterns.",
"storageAccount": "aatom",
"sets": [
{
"type": "Market Files",
"validPeriods": [ "24-hs", "12-hs", "08-hs", "06-hs", "04-hs", "03-hs", "02-hs", "01-hs" ],
"filePath": "@Exchange/Tom/dataSet.V1/Output/Volume-Stairs/Multi-Period-Market/@Period",
"fileName": "@AssetA_@AssetB.json"
},
{
"type": "Daily Files",
"validPeriods": [ "45-min", "40-min", "30-min", "20-min", "15-min", "10-min", "05-min", "04-min", "03-min", "02-min", "01-min" ],
"filePath": "@Exchange/Tom/dataSet.V1/Output/Volume-Stairs/Multi-Period-Daily/@Period/@Year/@Month/@Day",
"fileName": "@AssetA_@AssetB.json"
}
],
"exchangeList": [
{
"name": "Poloniex"
}
],
"plotter": {
"devTeam": "AAMasters",
"repo": "Plotters-Stairs-Patterns",
"moduleName": "VolumeStairs"
}
}
],
"storage": {
"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"
},
"products": [
{
"codeName": "Trading History",
"displayName": "Mariam Trading History",
"description": "General information about Mariam trading history.",
"storageAccount": "aamariam",
"sets": [
{
"type": "Single File",
"validPeriods": [ "24-hs", "12-hs", "08-hs", "06-hs", "04-hs", "03-hs", "02-hs", "01-hs", "45-min", "40-min", "30-min", "20-min", "15-min", "10-min", "05-min", "04-min", "03-min", "02-min", "01-min" ],
"filePath": "@Exchange/Mariam/dataSet.V1/Output/Trading-Process",
"fileName": "Execution.History.json"
}
],
"exchangeList": [
{
"name": "Poloniex"
}
],
"plotter": {
"devTeam": "AAMasters",
"repo": "Plotters-Trading",
"moduleName": "History"
}
}
],
"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"
}
}
],
"plotters": [
{
"description": "Plots traditional red and green candles.",
"repo": "Plotters-Candles-Volumes",
"moduleName": "Candles",
"target": "Timeline"
},
{
"description": "Plots volumes separated in buy and sell.",
"repo": "Plotters-Candles-Volumes",
"moduleName": "Volumes",
"target": "Timeline"
},
{
"description": "Plots Candle Stairs patterns.",
"repo": "Plotters-Stairs-Patterns",
"moduleName": "CandleStairs",
"target": "Timeline"
},
{
"description": "Plots Volume Stairs patterns.",
"repo": "Plotters-Stairs-Patterns",
"moduleName": "VolumeStairs",
"target": "Timeline"
},
{
"description": "Plots a trading history.",
"repo": "Plotters-Trading",
"moduleName": "History",
"target": "Timeline"
},
{
"description": "Plots trading decitions in an easy to understand way.",
"repo": "Plotters-Trading",
"moduleName": "Details",
"target": "Timeline"
}
]
}
]
}
+30 -8
View File
@@ -6,7 +6,7 @@ if (CONSOLE_LOG === true) {
}
let debugMode = false; // This forces the server to read Plotters from the local drive.
let debugMode = true; // This forces the server to read Plotters from the local drive.
if (CONSOLE_LOG === true && debugMode === true) {
@@ -14,7 +14,7 @@ if (CONSOLE_LOG === true && debugMode === true) {
}
let githubPages = new Map;
let githubData = new Map;
let ecosystem;
let ecosystemObject;
@@ -34,7 +34,7 @@ function initialize() {
let fs = require('fs');
try {
let fileName = 'ecosystem.json';
let fileName = '../AAPlatform/ecosystem.json';
fs.readFile(fileName, onFileRead);
function onFileRead(err, file) {
@@ -83,7 +83,7 @@ function onBrowserRequest(request, response) {
case "clear-cache": {
githubPages = new Map;
githubData = new Map;
respondWithContent("command acepted", response);
@@ -91,6 +91,14 @@ function onBrowserRequest(request, response) {
break;
case "Plotters.js":
{
/*
This file is build dinamically because it has the code to instantiate the different configured Plotters. The instantiation code
will be generated using a pre-defined string with replacement points. We will go through the configuration file to learn
about all the possible plotters the system can load.
*/
let fs = require('fs');
try {
let fileName = 'Plotters.js';
@@ -121,8 +129,6 @@ function onBrowserRequest(request, response) {
let plotter = devTeam.plotters[j];
/* Now each of these layers has a plotter that we need to define on the Plotter.js file. */
let caseStringCopy = caseString;
let newFunctionName = devTeam.codeName + plotter.repo + plotter.moduleName;
@@ -158,6 +164,13 @@ function onBrowserRequest(request, response) {
case "Ecosystem.js":
{
/*
At this page we need to insert the configuration file for the whole system that we assamble before at the begining of this module
execution. So what we do is to load a template file with an insertion point where the configuration json is injected in.
*/
let fs = require('fs');
try {
let fileName = 'Ecosystem.js';
@@ -190,6 +203,15 @@ function onBrowserRequest(request, response) {
case "Plotters": // This means the plotter folder, not to be confused with the Plotters script!
{
/*
There are 3 different sources for plotters:
1.If we are in debug mode, from the filesystem.
2.If we are in production from a cache we keep in memory at the node server.
3.If the cache does not have the file, then we get it from github.com, put in on the cache and serve it.
*/
if (debugMode === true) {
@@ -197,7 +219,7 @@ function onBrowserRequest(request, response) {
} else {
let cacheVersion = githubPages.get(requestParameters[2] + requestParameters[3] + requestParameters[4])
let cacheVersion = githubData.get(requestParameters[2] + requestParameters[3] + requestParameters[4])
if (cacheVersion !== undefined) {
@@ -226,7 +248,7 @@ function onBrowserRequest(request, response) {
respondWithContent(cleanString, response);
githubPages.set(requestParameters[2] + requestParameters[3] + requestParameters[4], cleanString);
githubData.set(requestParameters[2] + requestParameters[3] + requestParameters[4], cleanString);
}
}