Merge pull request #1069 from harrellbm/develop

Harden replaceBy config options, update coingecko map and add docs
This commit is contained in:
Luis Fernando Molina authored and GitHub committed 2021-06-03 07:50:18 -04:00
commit bc121adef5
7 files changed
+333 -18

No files matched your search

@@ -1 +1 @@
{"type":"API Map","name":"CoinGecko","config":"{\n \"codeName\": \"CoinGecko\",\n \"protocol\": \"https\",\n \"portNumber\": \"\",\n \"hostName\": \"api.coingecko.com\",\n \"path\": \"api\",\n \"millisecondsBetweenCalls\": 4000\n}","project":"Superalgos","apiVersions":[{"type":"API Version","name":"Version 3","config":"{\n \"codeName\": \"v3\"\n}","project":"Superalgos","apiEndpoints":[{"type":"API Endpoint","name":"Coins","config":"{\n \"codeName\": \"coins\"\n}","project":"Superalgos","apiPathParameters":{"type":"API Path Parameters","name":"New API Path Parameters","project":"Superalgos","apiPathParameters":[{"type":"API Path Parameter","name":"ID ","config":"{\n \"codeName\": \"bitcoin\",\n \"isString\": false,\n \"isOptional\": false,\n \"description\": \"Get historical blocks (use the current offset returned in a response to calculate the offset you want to get)\",\n \"replaceBy\": \"@BaseAssetName\"\n}","project":"Superalgos","id":"7ad55ecd-aef9-4d5d-847a-76bf95d9dd1e","savedPayload":{"position":{"x":15608.615242270662,"y":10360.192378864667},"targetPosition":{"x":15348.807621135331,"y":10510.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}}],"id":"06767740-6636-4345-aae6-34ff6edd3e6b","savedPayload":{"position":{"x":15348.807621135331,"y":10510.192378864667},"targetPosition":{"x":15089,"y":10660.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"apiQueryResponses":{"type":"API Query Responses","name":"New API Query Responses","project":"Superalgos","apiQueryResponses":[{"type":"API Query Response","name":"200 Successful","config":"{\n \"codeName\": \"200\",\n \"isError\": false\n}","project":"Superalgos","apiResponseSchema":{"type":"API Response Schema","name":"New API Response Schema","config":"{\n \"nodePath\": \"apiResponseReceivedObject\"\n}","project":"Superalgos","apiResponseFields":{"type":"API Response Field","name":"Root Object","config":"{\n \"codeName\": \"\",\n \"fieldType\": \"\",\n \"descrption\": \"This is the root object of the API response.\"\n}","project":"Superalgos","apiResponseFields":[{"type":"API Response Field","name":"market_cap_rank","config":"{\n \"codeName\": \"market_cap_rank\",\n \"fieldType\": \"number\",\n \"descrption\": \"Market Cap Rank of current responce\"\n}","project":"Superalgos","apiResponseFields":[],"id":"3e94e03f-0f7a-474c-bb83-1bcb58439c7a","savedPayload":{"position":{"x":16812.302174388584,"y":10985.928310152738},"targetPosition":{"x":16388.038105676656,"y":11410.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"API Response Field","name":"liquidity_score","config":"{\n \"codeName\": \"liquidity_score\",\n \"fieldType\": \"number\",\n \"descrption\": \"Liquidity score of returned asset as calculated by coingecko\"\n}","project":"Superalgos","apiResponseFields":[],"id":"2be7f9a7-da09-47a1-bd03-97e6f9181751","savedPayload":{"position":{"x":16907.65334794732,"y":11110.192378864667},"targetPosition":{"x":16388.038105676656,"y":11410.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"API Response Field","name":"last_updated","config":"{\n \"codeName\": \"last_updated\",\n \"fieldType\": \"string\",\n \"descrption\": \"Timestamp data was last updated\"\n}","project":"Superalgos","apiResponseFields":[],"id":"b916f7d2-215c-4f07-aaf1-5f900c762ef5","savedPayload":{"position":{"x":16967.5936014501,"y":11254.900951803154},"targetPosition":{"x":16388.038105676656,"y":11410.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"API Response Field","name":"sentiment_votes_up_percentage","config":"{\n \"codeName\": \"sentiment_votes_up_percentage\",\n \"fieldType\": \"number\",\n \"descrption\": \"Percentage of up votes for current returned asset\"\n}","project":"Superalgos","apiResponseFields":[],"id":"a8a0b9f2-6ec1-45c8-bf6a-f8f61cd11fb7","savedPayload":{"position":{"x":16988.038105676656,"y":11410.192378864667},"targetPosition":{"x":16388.038105676656,"y":11410.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"API Response Field","name":"sentiment_votes_down_percentage","config":"{\n \"codeName\": \"sentiment_votes_down_percentage\",\n \"fieldType\": \"number\",\n \"descrption\": \"PercenLine truncated
{"type":"API Map","name":"CoinGecko","config":"{\n \"codeName\": \"CoinGecko\",\n \"protocol\": \"https\",\n \"portNumber\": \"\",\n \"hostName\": \"api.coingecko.com\",\n \"path\": \"api\",\n \"millisecondsBetweenCalls\": 4000\n}","project":"Superalgos","apiVersions":[{"type":"API Version","name":"Version 3","config":"{\n \"codeName\": \"v3\"\n}","project":"Superalgos","apiEndpoints":[{"type":"API Endpoint","name":"Coins","config":"{\n \"codeName\": \"coins\"\n}","project":"Superalgos","apiPathParameters":{"type":"API Path Parameters","name":"New API Path Parameters","project":"Superalgos","apiPathParameters":[{"type":"API Path Parameter","name":"ID ","config":"{\n \"codeName\": \"currentBaseAsset\",\n \"isString\": false,\n \"isOptional\": false,\n \"description\": \"Get statistics for the current base asset\",\n \"replaceBy\": \"@BaseAssetNameLowercase\"\n}","project":"Superalgos","id":"7ad55ecd-aef9-4d5d-847a-76bf95d9dd1e","savedPayload":{"position":{"x":15608.615242270662,"y":10360.192378864667},"targetPosition":{"x":15348.807621135331,"y":10510.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}}],"id":"06767740-6636-4345-aae6-34ff6edd3e6b","savedPayload":{"position":{"x":15348.807621135331,"y":10510.192378864667},"targetPosition":{"x":15089,"y":10660.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"apiQueryResponses":{"type":"API Query Responses","name":"New API Query Responses","project":"Superalgos","apiQueryResponses":[{"type":"API Query Response","name":"200 Successful","config":"{\n \"codeName\": \"200\",\n \"isError\": false\n}","project":"Superalgos","apiResponseSchema":{"type":"API Response Schema","name":"New API Response Schema","config":"{\n \"nodePath\": \"apiResponseReceivedObject\"\n}","project":"Superalgos","apiResponseFields":{"type":"API Response Field","name":"Root Object","config":"{\n \"codeName\": \"\",\n \"fieldType\": \"\",\n \"descrption\": \"This is the root object of the API response.\"\n}","project":"Superalgos","apiResponseFields":[{"type":"API Response Field","name":"market_cap_rank","config":"{\n \"codeName\": \"market_cap_rank\",\n \"fieldType\": \"number\",\n \"descrption\": \"Market Cap Rank of current responce\"\n}","project":"Superalgos","apiResponseFields":[],"id":"3e94e03f-0f7a-474c-bb83-1bcb58439c7a","savedPayload":{"position":{"x":16812.302174388584,"y":10985.928310152738},"targetPosition":{"x":16388.038105676656,"y":11410.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"API Response Field","name":"liquidity_score","config":"{\n \"codeName\": \"liquidity_score\",\n \"fieldType\": \"number\",\n \"descrption\": \"Liquidity score of returned asset as calculated by coingecko\"\n}","project":"Superalgos","apiResponseFields":[],"id":"2be7f9a7-da09-47a1-bd03-97e6f9181751","savedPayload":{"position":{"x":16907.65334794732,"y":11110.192378864667},"targetPosition":{"x":16388.038105676656,"y":11410.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"API Response Field","name":"last_updated","config":"{\n \"codeName\": \"last_updated\",\n \"fieldType\": \"string\",\n \"descrption\": \"Timestamp data was last updated\"\n}","project":"Superalgos","apiResponseFields":[],"id":"b916f7d2-215c-4f07-aaf1-5f900c762ef5","savedPayload":{"position":{"x":16967.5936014501,"y":11254.900951803154},"targetPosition":{"x":16388.038105676656,"y":11410.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"API Response Field","name":"sentiment_votes_up_percentage","config":"{\n \"codeName\": \"sentiment_votes_up_percentage\",\n \"fieldType\": \"number\",\n \"descrption\": \"Percentage of up votes for current returned asset\"\n}","project":"Superalgos","apiResponseFields":[],"id":"a8a0b9f2-6ec1-45c8-bf6a-f8f61cd11fb7","savedPayload":{"position":{"x":16988.038105676656,"y":11410.192378864667},"targetPosition":{"x":16388.038105676656,"y":11410.192378864667},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"API Response Field","name":"sentiment_votes_down_percentage","config":"{\n \"codeName\": \"sentiment_votes_down_percentage\",\n \"fieldType\": \"number\",\n \"descrption\": \"Percentage of down votes for current returned asset\"\n}Line truncated
@@ -30,6 +30,11 @@
"text": "V->Superalgos->Topic->Zeus Data Mine->",
"updated": 1611686424488
},
{
"style": "Chapter",
"text": "VI->Superalgos->Topic->CoinGecko API Map and Mine->",
"updated": 1622690513016
},
{
"style": "Text",
"text": ""
@@ -1,8 +1,8 @@
{
"type": "replaceBy Config Property",
"definition": {
"text": "This property allows you to instruct the API Fetcher Bot to set a value to this parameter based on contextual information that can not be defined at the Data Mine or the API Map. This contextual information can be for example the current Base Asset or the current time.",
"updated": 1622476480596
"text": "This property is used within API Path Parameter and API Query Parameter configs. It allows you to instruct the API Fetcher Bot to set a value for this parameter based on contextual information that cannot be predefined at the Data Mine or the API Map. For example, this contextual information could be the current Base Asset being used or the current Time.",
"updated": 1622684765167
},
"paragraphs": [
{
@@ -11,16 +11,27 @@
"updated": 1622477226772
},
{
"style": "Subtitle",
"style": "Title",
"text": "replaceBy Config Property Usage"
},
{
"style": "Text",
"text": "This property is optional, meaning that the Bot will use the default value when it is not present. The default value for an API Query Parameter is the value configu property, while the default for an API Path Parameter is the codeName config property."
"text": "This property is optional, meaning that the Bot will use the default value when it is not present. The default value for both API Query Parameter and API Path Parameter is the codeName config property. An example of how this would look in a config is as follows:",
"updated": 1622685164654
},
{
"style": "Javascript",
"text": "{\n \"codeName\": \"currentBaseAsset\",\n \"isString\": false,\n \"isOptional\": false,\n \"description\": \"\",\n \"replaceBy\": \"@BaseAsset\"\n}",
"updated": 1622685104193
},
{
"style": "Text",
"text": "The possible values for this property are:"
"text": "The following list lays out all the possible values you can use within the replaceBy property. ",
"updated": 1622685176762
},
{
"style": "Subtitle",
"text": "For Base Asset"
},
{
"style": "List",
@@ -33,8 +44,32 @@
},
{
"style": "List",
"text": "@QuotedAsset: This will force the Bot to use the current Quoted Asset.",
"updated": 1622476819686
"text": "@BaseAssetNameUppercase: This will force the Bot to use the current name of the Base Asset beginning with an uppercase letter.",
"updated": 1622683262892
},
{
"style": "Javascript",
"text": "rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE\n.parentNode.parentNode.parentNode.referenceParent.baseAsset.referenceParent.name\nparameterValue = rawValue.toUpperCase()",
"updated": 1622683076901
},
{
"style": "List",
"text": "@BaseAssetNameLowercase: This will force the Bot to use the name of the current Base Asset beginning with a lowercase letter.",
"updated": 1622683250737
},
{
"style": "Javascript",
"text": "rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode\n.parentNode.parentNode.referenceParent.baseAsset.referenceParent.name\nparameterValue = rawValue.toLowerCase()",
"updated": 1622683129110
},
{
"style": "Subtitle",
"text": "For Quoted Asset",
"updated": 1622684096573
},
{
"style": "List",
"text": "@QuotedAsset: This will force the Bot to use the current Quoted Asset."
},
{
"style": "Javascript",
@@ -43,8 +78,66 @@
},
{
"style": "List",
"text": "@BeginCurrentMinute: This will instruct the Bot to use a timestamp at the begining of the current minute.",
"updated": 1622476907142
"text": "@QuotedAssetNameUppercase: This will force the Bot to use the name of the current Base Asset beginning with an uppercase letter.",
"updated": 1622683649444
},
{
"style": "Javascript",
"text": "rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE\n.parentNode.parentNode.parentNode.referenceParent.quotedAsset.referenceParent.name\nparameterValue = rawValue.toUpperCase()",
"updated": 1622683501102
},
{
"style": "List",
"text": "@QuotedAssetNameLowercase: This will force the Bot to use the name of the current Base Asset beginning with a lowercase letter.",
"updated": 1622683656687
},
{
"style": "Javascript",
"text": "rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE\n.parentNode.parentNode.parentNode.referenceParent.quotedAsset.referenceParent.name\nparameterValue = rawValue.toLowerCase()",
"updated": 1622683457003
},
{
"style": "Subtitle",
"text": "For Exchange",
"updated": 1622684422398
},
{
"style": "List",
"text": "@Exchange: This will force the Bot to use the current Exchange."
},
{
"style": "Javascript",
"text": "parameterValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE \n.parentNode.parentNode.parentNode.referenceParent.parentNode.parentNode.config.codeName",
"updated": 1622682215370
},
{
"style": "List",
"text": "@ExchangeNameUppercase: This will force the Bot to use the name of the current Exchange beginning with an uppercase letter.",
"updated": 1622684044204
},
{
"style": "Javascript",
"text": "rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE\n.parentNode.parentNode.parentNode.referenceParent.parentNode.parentNode.name\nparameterValue = rawValue.toUpperCase()",
"updated": 1622683827954
},
{
"style": "List",
"text": "@ExchangeNameLowercase: This will force the Bot to use the name of the current Exchange beginning with a lowercase letter.",
"updated": 1622684016700
},
{
"style": "Javascript",
"text": "rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE\n.parentNode.parentNode.parentNode.referenceParent.parentNode.parentNode.name\nparameterValue = rawValue.toLowerCase()",
"updated": 1622683964537
},
{
"style": "Subtitle",
"text": "For Timestamp",
"updated": 1622684458481
},
{
"style": "List",
"text": "@BeginCurrentMinute: This will instruct the Bot to use a timestamp at the begining of the current minute."
},
{
"style": "Javascript",
@@ -63,8 +156,13 @@
},
{
"style": "Note",
"text": "If users assing a value that is not listed above, the property will be ingnored and the default value will be used.",
"updated": 1622477178155
"text": "If users access a value that is not listed above, the property will be ignored and the default value will be used.",
"updated": 1622682302500
},
{
"style": "Success",
"text": "Name values are drawn from the asset labels held within the Exchange Assets node.",
"updated": 1622684251888
},
{
"style": "Text",
@@ -0,0 +1,21 @@
{
"topic": "CoinGecko API Map and Mine",
"pageNumber": 1,
"type": "CoinGecko API Map and Mine",
"definition": {
"text": "This API Map and Data Mine taps into the CoinGecko API to pull statistics about the current assets being used from the CoinGecko API.",
"updated": 1622686884874
},
"paragraphs": [
{
"style": "List",
"text": "Maintainer: @harrellbm (Telegram, and Discord).",
"updated": 1622686900513
},
{
"style": "Success",
"text": "Additional collaborators are welcome!",
"updated": 1622686914590
}
]
}
@@ -0,0 +1,102 @@
{
"topic": "CoinGecko API Map and Mine",
"pageNumber": 2,
"type": "CoinGecko API Map",
"definition": {
"text": "The current CoinGecko API Map accesses the following endpoints of the CoinGecko API.",
"updated": 1622686989766
},
"paragraphs": [
{
"style": "Text",
"text": "Documentation for the CoinGecko API can be found at the following link:",
"updated": 1622687107891
},
{
"style": "Link",
"text": "www.coingecko.com/en/api->www.coingecko.com/en/api",
"updated": 1622687459394
},
{
"style": "Text",
"text": "The base request URL is:"
},
{
"style": "Javascript",
"text": "https://api.coingecko.com/api/v3/"
},
{
"style": "Title",
"text": "Mapped Endpoints",
"updated": 1622687143514
},
{
"style": "Json",
"text": "/coins/{id}",
"updated": 1622688221280
},
{
"style": "Subtitle",
"text": "Raw Returned Values",
"updated": 1622688289637
},
{
"style": "List",
"text": "id: name of returned coin (string).",
"updated": 1622688305150
},
{
"style": "List",
"text": "market_cap_rank: Current ranking of coin based on its overall share of the crypto market cap (number)."
},
{
"style": "List",
"text": "sentiment_votes_up_percentage: Percentage of up votes for coin through CoinGecko platforms (number).",
"updated": 1622688575235
},
{
"style": "List",
"text": "sentiment_votes_down_percentage: Percentage of down votes for coin through CoinGecko platforms (number).",
"updated": 1622688586166
},
{
"style": "List",
"text": "block_time_in_minutes: Current time in minutes taken to mine the last block of coin (number).",
"updated": 1622688666930
},
{
"style": "List",
"text": "coingecko_score: Overall trust score given to coin by the CoinGecko platform (number)."
},
{
"style": "Note",
"text": "CoinGecko score is an aggregated score combining liquidity, community, developer, and public interest scores.",
"updated": 1622688833507
},
{
"style": "List",
"text": "liquidity_score: Liquidity health score given by the CoinGecko platform (number).",
"updated": 1622688975074
},
{
"style": "List",
"text": "community_score: Community strength score given by the CoinGecko platform (number).",
"updated": 1622689004490
},
{
"style": "List",
"text": "developer_score: Developer strength score given by the CoinGecko platform (number).",
"updated": 1622689029728
},
{
"style": "List",
"text": "public_interest_score: Level of public interest score given by the CoinGecko platform (number).",
"updated": 1622689104410
},
{
"style": "List",
"text": "last_updated: Date content of current responce was last updated (string).",
"updated": 1622689075868
}
]
}
@@ -0,0 +1,70 @@
{
"topic": "CoinGecko API Map and Mine",
"pageNumber": 3,
"type": "CoinGecko API Mine",
"definition": {
"text": "This data mine processes data fetched from the CoinGecko API Map.",
"updated": 1622689326578
},
"paragraphs": [
{
"style": "Note",
"text": "There are currently not plotters for this mine. This means that there are currently no visual representations of this data for the charts. However, all data is processed into Multi-Time-Frame-Daily and Multi-Time-Frame-Market data types making it ready to be used by other SA bots.",
"updated": 1622689830172
},
{
"style": "Title",
"text": "Processed Values",
"updated": 1622689893560
},
{
"style": "List",
"text": "id: name of returned coin (string)."
},
{
"style": "List",
"text": "market_cap_rank: Current ranking of coin based on its overall share of the crypto market cap (number)."
},
{
"style": "List",
"text": "sentiment_votes_up_percentage: Percentage of up votes for coin through CoinGecko platforms (number)."
},
{
"style": "List",
"text": "sentiment_votes_down_percentage: Percentage of down votes for coin through CoinGecko platforms (number)."
},
{
"style": "List",
"text": "block_time_in_minutes: Current time in minutes taken to mine the last block of coin (number)."
},
{
"style": "List",
"text": "coingecko_score: Overall trust score given to coin by the CoinGecko platform (number)."
},
{
"style": "Note",
"text": "CoinGecko score is an aggregated score combining liquidity, community, developer, and public interest scores.",
"updated": 1622689922164
},
{
"style": "List",
"text": "liquidity_score: Liquidity health score given by the CoinGecko platform (number)."
},
{
"style": "List",
"text": "community_score: Community strength score given by the CoinGecko platform (number)."
},
{
"style": "List",
"text": "developer_score: Developer strength score given by the CoinGecko platform (number)."
},
{
"style": "List",
"text": "public_interest_score: Level of public interest score given by the CoinGecko platform (number)."
},
{
"style": "Text",
"text": ""
}
]
}
@@ -416,30 +416,49 @@ exports.newSuperalgosBotModulesFetchingProcess = function (processIndex) {
function checkReplaceBy(apiParameter) {
let parameterValue
let rawValue
if (apiParameter.config.replaceBy !== undefined) {
switch (apiParameter.config.replaceBy) {
case '@BaseAsset': {
parameterValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.baseAsset.referenceParent.config.codeName
break
}
case '@BaseAssetName': {
parameterValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.baseAsset.referenceParent.name
case '@BaseAssetNameUppercase': {
rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.baseAsset.referenceParent.name
parameterValue = rawValue.toUpperCase()
break
}
case '@BaseAssetNameLowercase': {
rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.baseAsset.referenceParent.name
parameterValue = rawValue.toLowerCase()
break
}
case '@QuotedAsset': {
parameterValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.quotedAsset.referenceParent.config.codeName
break
}
case '@QuotedAssetName': {
parameterValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.quotedAsset.referenceParent.name
case '@QuotedAssetNameUppercase': {
rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.quotedAsset.referenceParent.name
parameterValue = rawValue.toUpperCase()
break
}
case '@QuotedAssetNameLowercase': {
rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.quotedAsset.referenceParent.name
parameterValue = rawValue.toLowerCase()
break
}
case '@Exchange': {
parameterValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.parentNode.parentNode.config.codeName
break
}
case '@ExchangeName': {
parameterValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.parentNode.parentNode.name
case '@ExchangeNameUppercase': {
rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.parentNode.parentNode.name
parameterValue = rawValue.toUpperCase()
break
}
case '@ExchangeNameLowercase': {
rawValue = TS.projects.superalgos.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.parentNode.parentNode.name
parameterValue = rawValue.toLowerCase()
break
}
case '@BeginCurrentMinute': {