Merge branch 'develop' of https://github.com/Superalgos/Superalgos into develop
This commit is contained in:
commit
1f550b8939
144 files changed
+363787
-431919
No files matched your search
+21
-19
@@ -3,25 +3,27 @@
|
||||
# These owners will be the default owners for everything in
|
||||
# the repo. Unless a later match takes precedence, these will be requested for
|
||||
# review when someone opens a pull request.
|
||||
* @superalgos/core-devs
|
||||
* @Superalgos/core-devs
|
||||
|
||||
# Project Teams
|
||||
/Projects/Algorithmic-Trading @superalgos/algorithmic-trading-project
|
||||
/Projects/Community-Plugins @superalgos/community-plugins-project
|
||||
/Projects/Data-Mining @superalgos/data-mining-project
|
||||
/Projects/Education @superalgos/education-project
|
||||
/Projects/Ethereum @superalgos/ethereum-project
|
||||
/Projects/Foundations @superalgos/foundations-project
|
||||
/Projects/Governance @superalgos/governance-project
|
||||
/Projects/Machine-Learning @superalgos/machine-learning-project
|
||||
/Projects/Network @superalgos/network-project
|
||||
/Projects/Social-Bots @superalgos/social-bots-project
|
||||
/Projects/Social-Trading @superalgos/social-trading-project
|
||||
/Projects/TensorFlow @superalgos/tensorflow-project
|
||||
/Projects/Visual-Scripting @superalgos/visual-scripting-project
|
||||
/Projects/Algorithmic-Trading @Superalgos/algorithmic-trading-project
|
||||
/Projects/Community-Plugins @Superalgos/community-plugins-project
|
||||
/Projects/Data-Mining @Superalgos/data-mining-project
|
||||
/Projects/Ethereum @Superalgos/ethereum-project
|
||||
/Projects/Foundations @Superalgos/foundations-project
|
||||
/Projects/Governance @Superalgos/governance-project
|
||||
/Projects/Machine-Learning @Superalgos/machine-learning-project
|
||||
/Projects/Network @Superalgos/network-project
|
||||
/Projects/Social-Bots @Superalgos/social-bots-project
|
||||
/Projects/Social-Trading @Superalgos/social-trading-project
|
||||
/Projects/TensorFlow @Superalgos/tensorflow-project
|
||||
/Projects/Visual-Scripting @Superalgos/visual-scripting-project
|
||||
|
||||
/.github @superalgos/sysadmins-team
|
||||
/Docker @superalgos/sysadmins-team
|
||||
.git* @superalgos/sysadmins-team
|
||||
.docker* @superalgos/sysadmins-team
|
||||
package*.json @superalgos/sysadmins-team
|
||||
/Projects/Education @Superalgos/education-project
|
||||
Docs*/ @Superalgos/education-project
|
||||
|
||||
/.github @Superalgos/sysadmins-team
|
||||
/Docker @Superalgos/sysadmins-team
|
||||
.git* @Superalgos/sysadmins-team
|
||||
.docker* @Superalgos/sysadmins-team
|
||||
package*.json @Superalgos/sysadmins-team
|
||||
@@ -1,9 +1,14 @@
|
||||
name: Build/release
|
||||
name: Build/release Binaries
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
tags:
|
||||
- '*'
|
||||
release:
|
||||
types: [published, created, edited]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
release:
|
||||
@@ -28,7 +33,8 @@ jobs:
|
||||
# GitHub token, automatically provided to the action
|
||||
# (No need to define this secret in the repo settings)
|
||||
github_token: ${{ secrets.github_token }}
|
||||
args: "-c.extraMetadata.main=electron-wrapper.js -c build/electron-builder.json"
|
||||
|
||||
# If the commit is tagged with a version (e.g. "v1.0.0"),
|
||||
# release the app after building
|
||||
release: ${{ startsWith(github.ref, 'refs/tags/v') }}
|
||||
release: ${{ startsWith(github.ref, 'refs/tags/') }}
|
||||
@@ -0,0 +1,80 @@
|
||||
name: Nightly develop Binaries
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '20 3 * * *'
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
create-release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Download a file
|
||||
run: curl "https://raw.githubusercontent.com/${{ github.repository }}/develop/package.json" -o package.json
|
||||
|
||||
- name: Get current date
|
||||
id: date
|
||||
run: echo "::set-output name=date::$(date +'%Y%m%d')"
|
||||
|
||||
- name: get-version
|
||||
id: version
|
||||
uses: nyaa8/package-version@v1
|
||||
with:
|
||||
path: './package.json'
|
||||
|
||||
- name: Create nightly release
|
||||
id: create_release
|
||||
uses: viperproject/create-nightly-release@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
tag_name: ${{ env.PACKAGE_VERSION }}.${{ steps.date.outputs.date }}
|
||||
release_name: Superalgos ${{ env.PACKAGE_VERSION }} Snapshot ${{ steps.date.outputs.date }}
|
||||
keep_num: 5
|
||||
keep_tags: false
|
||||
|
||||
build-release:
|
||||
runs-on: ${{ matrix.os }}
|
||||
needs: create-release
|
||||
strategy:
|
||||
matrix:
|
||||
os: [windows-latest, macos-latest]
|
||||
|
||||
steps:
|
||||
- name: Get current date
|
||||
id: date
|
||||
run: echo "::set-output name=date::$(date +'%Y%m%d')"
|
||||
|
||||
- name: Check out Git repository
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
ref: develop
|
||||
|
||||
- name: Install Node.js, NPM and Yarn
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: 14
|
||||
|
||||
- name: get-version
|
||||
id: version
|
||||
uses: nyaa8/package-version@v1
|
||||
with:
|
||||
path: './package.json'
|
||||
|
||||
- name: Build/release Electron app
|
||||
#env:
|
||||
# DATE: ${{ steps.date.outputs.date }}
|
||||
uses: samuelmeuli/action-electron-builder@v1
|
||||
with:
|
||||
# GitHub token, automatically provided to the action
|
||||
# (No need to define this secret in the repo settings)
|
||||
github_token: ${{ secrets.github_token }}
|
||||
args: "-c.extraMetadata.main=electron-wrapper.js -c.extraMetadata.version=${{ env.PACKAGE_VERSION }}.${{ steps.date.outputs.date }} -c build/electron-builder.json -p onTagOrDraft"
|
||||
|
||||
# If the commit is tagged with a version (e.g. "v1.0.0"),
|
||||
# release the app after building
|
||||
# release: ${{ startsWith(github.ref, 'refs/tags/v') }}
|
||||
release: true
|
||||
|
||||
|
||||
Vendored
+10
-10
@@ -4,22 +4,22 @@
|
||||
"**/Log-Files": true,
|
||||
"**/node_modules": true,
|
||||
"**/My-Social-Trading-Data": true,
|
||||
"**/My-Network-Nodes-Data": true,
|
||||
"**/My-Workspaces": false,
|
||||
"**/My-Secrets": true,
|
||||
"**/My-Data-Storage": true,
|
||||
"**/My-Log-Files": true,
|
||||
"**/My-Network-Nodes-Data": true,
|
||||
"**/My-Workspaces": true,
|
||||
"**/My-Secrets": true,
|
||||
"**/My-Data-Storage": true,
|
||||
"**/My-Log-Files": true,
|
||||
},
|
||||
"search.exclude": {
|
||||
"**/Data-Storage": true,
|
||||
"**/Log-Files": true,
|
||||
"**/node_modules": true,
|
||||
"**/My-Social-Trading-Data": true,
|
||||
"**/My-Network-Nodes-Data": true,
|
||||
"**/My-Workspaces": true,
|
||||
"**/My-Secrets": true,
|
||||
"**/My-Data-Storage": true,
|
||||
"**/My-Log-Files": true,
|
||||
"**/My-Network-Nodes-Data": true,
|
||||
"**/My-Workspaces": true,
|
||||
"**/My-Secrets": true,
|
||||
"**/My-Data-Storage": true,
|
||||
"**/My-Log-Files": true,
|
||||
},
|
||||
"search.maintainFileSearchCache": true
|
||||
}
|
||||
@@ -8,16 +8,14 @@ exports.newDesktopApp = function newDesktopApp() {
|
||||
|
||||
async function run() {
|
||||
/*
|
||||
Heree we will store our running objects:
|
||||
Here we will store our running objects:
|
||||
*/
|
||||
DK.running = {}
|
||||
|
||||
/*
|
||||
This is the Web Sockets client that interacts with the Superalgos Network.
|
||||
This is the Personal Social Graph for the user running this App.
|
||||
*/
|
||||
DK.running.socialGraph = DK.projects.socialTrading.modules.socialGraph.newSocialTradingModulesSocialGraph()
|
||||
await DK.running.socialGraph.initialize()
|
||||
|
||||
/*
|
||||
This is the Web Sockets client that interacts with the Superalgos Network.
|
||||
*/
|
||||
@@ -25,11 +23,11 @@ exports.newDesktopApp = function newDesktopApp() {
|
||||
await DK.running.webSocketsClient.initialize()
|
||||
console.log('Desktop Client Connected to Network Node via Web Sockets ................... Connected to port ' + global.env.NETWORK_WEB_SOCKETS_INTERFACE_PORT)
|
||||
|
||||
/* These are the Network Interfaces by which the UI interacts with the Desktop App.*/
|
||||
/* These are the Network Interfaces by which the Web App interacts with this Desktop Client.*/
|
||||
|
||||
DK.running.webSocketsInterface = DK.projects.socialTrading.modules.webSocketsInterface.newDesktopModulesWebSocketsInterface()
|
||||
DK.running.webSocketsInterface.initialize()
|
||||
console.log('Desktop Client Web Sockets Interface ....................................... Listening at port ' + global.env.CLIENT_WEB_SOCKETS_INTERFACE_PORT)
|
||||
console.log('Desktop Client Web Sockets Interface ....................................... Listening at port ' + global.env.DESKTOP_WEB_SOCKETS_INTERFACE_PORT)
|
||||
|
||||
|
||||
DK.running.httpInterface = DK.projects.socialTrading.modules.httpInterface.newDesktopModulesHttpInterface()
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
function newWebApp() {
|
||||
/*
|
||||
In it's current state of development, the Web App only has one module.
|
||||
|
||||
Everything is being coded here until some structure emerges.
|
||||
*/
|
||||
let thisObject = {
|
||||
initialize: initialize,
|
||||
finalize: finalize
|
||||
@@ -123,7 +127,6 @@ function newWebApp() {
|
||||
function addToContentDiv(events) {
|
||||
try {
|
||||
let contentDiv = document.getElementById('content-div')
|
||||
|
||||
/*
|
||||
Delete al current content.
|
||||
*/
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ exports.newDesktopRoot = function newDesktopRoot() {
|
||||
*/
|
||||
global.SA = {}
|
||||
/* Load Environment Variables */
|
||||
let ENVIRONMENT = require('./EnvironmentForDebug.js');
|
||||
let ENVIRONMENT = require('./Environment.js');
|
||||
let ENVIRONMENT_MODULE = ENVIRONMENT.newEnvironment()
|
||||
global.env = ENVIRONMENT_MODULE
|
||||
/*
|
||||
|
||||
+8
-3
@@ -10,14 +10,19 @@ exports.newEnvironment = function () {
|
||||
let thisObject = {
|
||||
BASE_PATH: basePath,
|
||||
WEB_SERVER_URL: 'localhost',
|
||||
CLIENT_WEB_SOCKETS_INTERFACE_PORT: 18041,
|
||||
CLIENT_HTTP_INTERFACE_PORT: 34248,
|
||||
PLATFORM_WEB_SOCKETS_INTERFACE_PORT: 18041,
|
||||
NETWORK_WEB_SOCKETS_INTERFACE_PORT: 18042,
|
||||
DESKTOP_WEB_SOCKETS_INTERFACE_PORT: 18043,
|
||||
DESKTOP_WEB_SOCKETS_INTERFACE_HOST: 'localhost',
|
||||
PLATFORM_HTTP_INTERFACE_PORT: 34248,
|
||||
DESKTOP_HTTP_INTERFACE_PORT: 34249,
|
||||
PATH_TO_DATA_STORAGE: path.join(basePath, './Platform/My-Data-Storage'),
|
||||
PATH_TO_PROJECTS: path.join(basePath, './Projects'),
|
||||
PATH_TO_LOG_FILES: path.join(basePath, './Platform/My-Log-Files'),
|
||||
PATH_TO_PROJECTS_REQUIRED: path.join(basePath, './Projects'),
|
||||
PATH_TO_PROJECT_SCHEMA: path.join(basePath, './Projects/ProjectsSchema.json'),
|
||||
PATH_TO_CLIENT: path.join(basePath, './Platform'),
|
||||
PATH_TO_PLATFORM: path.join(basePath, './Platform'),
|
||||
PATH_TO_DESKTOP: './Desktop',
|
||||
PATH_TO_DEFAULT_WORKSPACE: path.join(basePath, './Projects/Foundations/Plugins/Workspaces'),
|
||||
PATH_TO_MY_WORKSPACES: path.join(basePath, './Platform/My-Workspaces'),
|
||||
PATH_TO_FONTS: path.join(basePath, './Platform/WebServer/Fonts')
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
exports.newEnvironment = function () {
|
||||
|
||||
let thisObject = {
|
||||
WEB_SERVER_URL: 'localhost',
|
||||
CLIENT_WEB_SOCKETS_INTERFACE_PORT: 18041,
|
||||
NETWORK_WEB_SOCKETS_INTERFACE_PORT: 18042,
|
||||
DESKTOP_WEB_SOCKETS_INTERFACE_PORT: 18043,
|
||||
DESKTOP_WEB_SOCKETS_INTERFACE_HOST: 'localhost',
|
||||
CLIENT_HTTP_INTERFACE_PORT: 34248,
|
||||
DESKTOP_HTTP_INTERFACE_PORT: 34249,
|
||||
PATH_TO_DATA_STORAGE: './Platform/My-Data-Storage',
|
||||
PATH_TO_LOG_FILES: './Platform/My-Log-Files',
|
||||
PATH_TO_PROJECTS: './Projects',
|
||||
PATH_TO_PROJECTS_REQUIRED: './Projects',
|
||||
PATH_TO_PROJECT_SCHEMA: './Projects/ProjectsSchema.json',
|
||||
PATH_TO_CLIENT: './Platform',
|
||||
PATH_TO_DESKTOP: './Desktop',
|
||||
PATH_TO_DEFAULT_WORKSPACE: './Projects/Foundations/Plugins/Workspaces',
|
||||
PATH_TO_MY_WORKSPACES: './Platform/My-Workspaces',
|
||||
PATH_TO_FONTS: './Platform/WebServer/Fonts'
|
||||
}
|
||||
|
||||
return thisObject
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"folders": [
|
||||
{
|
||||
"path": "C:\\Superalgos\\Network"
|
||||
},
|
||||
{
|
||||
"path": "C:\\Superalgos\\Projects\\Network"
|
||||
},
|
||||
{
|
||||
"path": "C:\\Superalgos\\Projects\\Social-Trading"
|
||||
}
|
||||
],
|
||||
"settings": {}
|
||||
}
|
||||
Vendored
-17
@@ -1,17 +0,0 @@
|
||||
{
|
||||
"files.exclude": {
|
||||
"**/Data-Storage": true,
|
||||
"**/Documentation": true,
|
||||
"**/Log-Files": true,
|
||||
"**/node_modules": true,
|
||||
"**/Deprecated-Code": true
|
||||
},
|
||||
"search.exclude": {
|
||||
"**/Data-Storage": true,
|
||||
"**/Documentation": true,
|
||||
"**/Log-Files": true,
|
||||
"**/node_modules": true,
|
||||
"**/Deprecated-Code": true
|
||||
},
|
||||
"search.maintainFileSearchCache": true
|
||||
}
|
||||
@@ -10,14 +10,18 @@ exports.newNetworkNode = function newNetworkNode() {
|
||||
|
||||
async function run() {
|
||||
/*
|
||||
Let's start the Network Interfaces
|
||||
Other Network Nodes and Client Apps will communicate with this Network Node via it's Websocket Interface.
|
||||
*/
|
||||
NT.webSocketsInterface = NT.projects.network.modules.webSocketsInterface.newNetworkModulesWebSocketsInterface()
|
||||
NT.webSocketsInterface.initialize()
|
||||
|
||||
/*
|
||||
The Social Graph Service is the first and for now, the only service this Network Node provides.
|
||||
*/
|
||||
thisObject.socialGraphService = NT.projects.socialTrading.modules.socialGraph.newNetworkModulesSocialGraph()
|
||||
await thisObject.socialGraphService.initialize()
|
||||
|
||||
/*
|
||||
The Sotrage deals with persisting the Social Graph.
|
||||
*/
|
||||
thisObject.storage = NT.projects.socialTrading.modules.storage.newSocialTradingModulesStorage()
|
||||
thisObject.storage.initialize()
|
||||
}
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ exports.newNetworkRoot = function newNetworkRoot() {
|
||||
*/
|
||||
global.SA = {}
|
||||
/* Load Environment Variables */
|
||||
let ENVIRONMENT = require('./EnvironmentForDebug.js');
|
||||
let ENVIRONMENT = require('./Environment.js');
|
||||
let ENVIRONMENT_MODULE = ENVIRONMENT.newEnvironment()
|
||||
global.env = ENVIRONMENT_MODULE
|
||||
/*
|
||||
|
||||
@@ -24,7 +24,7 @@ exports.newHttpInterface = function newHttpInterface() {
|
||||
/*
|
||||
We will create an HTTP Server and leave it running forever.
|
||||
*/
|
||||
SA.nodeModules.http.createServer(onHttpRequest).listen(global.env.CLIENT_HTTP_INTERFACE_PORT)
|
||||
SA.nodeModules.http.createServer(onHttpRequest).listen(global.env.PLATFORM_HTTP_INTERFACE_PORT)
|
||||
/* Starting the browser now is optional */
|
||||
if (process.argv.includes("noBrowser")) {
|
||||
//Running Client only with no UI.
|
||||
@@ -33,7 +33,7 @@ exports.newHttpInterface = function newHttpInterface() {
|
||||
if (initialWorkspace.name !== undefined) {
|
||||
queryString = '/?initialWorkspaceName=' + initialWorkspace.name + '&initialWorkspaceProject=' + initialWorkspace.project + '&initialWorkspaceType=' + initialWorkspace.type
|
||||
}
|
||||
SA.nodeModules.open('http://localhost:' + global.env.CLIENT_HTTP_INTERFACE_PORT + queryString)
|
||||
SA.nodeModules.open('http://localhost:' + global.env.PLATFORM_HTTP_INTERFACE_PORT + queryString)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1311,17 +1311,17 @@ exports.newHttpInterface = function newHttpInterface() {
|
||||
break
|
||||
case 'LegacyPlotter.js':
|
||||
{
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_CLIENT + '/WebServer/LegacyPlotter.js', httpResponse)
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_PLATFORM + '/WebServer/LegacyPlotter.js', httpResponse)
|
||||
}
|
||||
break
|
||||
case 'PlotterPanel.js':
|
||||
{
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_CLIENT + '/WebServer/PlotterPanel.js', httpResponse)
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_PLATFORM + '/WebServer/PlotterPanel.js', httpResponse)
|
||||
}
|
||||
break
|
||||
case 'Images': // This means the Images folder.
|
||||
{
|
||||
let path = global.env.PATH_TO_CLIENT + '/WebServer/Images/' + requestPath[2]
|
||||
let path = global.env.PATH_TO_PLATFORM + '/WebServer/Images/' + requestPath[2]
|
||||
|
||||
if (requestPath[3] !== undefined) {
|
||||
path = path + '/' + requestPath[3]
|
||||
@@ -1403,12 +1403,12 @@ exports.newHttpInterface = function newHttpInterface() {
|
||||
break
|
||||
case 'WebServer': // This means the WebServer folder.
|
||||
{
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_CLIENT + '/WebServer/' + requestPath[2], httpResponse)
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_PLATFORM + '/WebServer/' + requestPath[2], httpResponse)
|
||||
}
|
||||
break
|
||||
case 'externalScripts': // This means the WebServer folder.
|
||||
{
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_CLIENT + '/WebServer/externalScripts/' + requestPath[2], httpResponse)
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_PLATFORM + '/WebServer/externalScripts/' + requestPath[2], httpResponse)
|
||||
}
|
||||
break
|
||||
case 'Plotters': // This means the plotter folder, not to be confused with the Plotters script!
|
||||
@@ -1423,12 +1423,12 @@ exports.newHttpInterface = function newHttpInterface() {
|
||||
break
|
||||
case 'ChartLayers':
|
||||
{
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_CLIENT + '/UI/' + endpointOrFile + '/' + requestPath[2], httpResponse)
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_PLATFORM + '/UI/' + endpointOrFile + '/' + requestPath[2], httpResponse)
|
||||
}
|
||||
break
|
||||
case 'Files':
|
||||
{
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_CLIENT + '/UI/Data-Files/' + requestPath[2], httpResponse)
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithFile(global.env.PATH_TO_PLATFORM + '/UI/Data-Files/' + requestPath[2], httpResponse)
|
||||
}
|
||||
break
|
||||
case 'Fonts':
|
||||
@@ -1943,7 +1943,7 @@ exports.newHttpInterface = function newHttpInterface() {
|
||||
break
|
||||
default:
|
||||
{
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithWebFile(httpResponse, endpointOrFile, global.env.PATH_TO_CLIENT)
|
||||
SA.projects.foundations.utilities.httpResponses.respondWithWebFile(httpResponse, endpointOrFile, global.env.PATH_TO_PLATFORM)
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
const WEB_SOCKET = SA.nodeModules.ws
|
||||
let socketServer
|
||||
let port = global.env.CLIENT_WEB_SOCKETS_INTERFACE_PORT
|
||||
let port = global.env.PLATFORM_WEB_SOCKETS_INTERFACE_PORT
|
||||
|
||||
return thisObject
|
||||
|
||||
|
||||
@@ -135,11 +135,11 @@ exports.newPlatformApp = function newPlatformApp() {
|
||||
console.log('')
|
||||
WEB_SOCKETS_INTERFACE = WEB_SOCKETS_INTERFACE.newWebSocketsInterface()
|
||||
WEB_SOCKETS_INTERFACE.initialize()
|
||||
console.log('Web Sockets Interface ....................................... Listening at port ' + global.env.CLIENT_WEB_SOCKETS_INTERFACE_PORT)
|
||||
console.log('Web Sockets Interface ....................................... Listening at port ' + global.env.PLATFORM_WEB_SOCKETS_INTERFACE_PORT)
|
||||
|
||||
HTTP_INTERFACE = HTTP_INTERFACE.newHttpInterface()
|
||||
HTTP_INTERFACE.initialize(initialWorkspace)
|
||||
console.log('Http Interface .............................................. Listening at port ' + global.env.CLIENT_HTTP_INTERFACE_PORT)
|
||||
console.log('Http Interface .............................................. Listening at port ' + global.env.PLATFORM_HTTP_INTERFACE_PORT)
|
||||
|
||||
console.log('')
|
||||
console.log("You are running Superalgos Beta 12")
|
||||
|
||||
@@ -45,7 +45,7 @@ function newDailyFiles() {
|
||||
}
|
||||
}
|
||||
|
||||
function initialize(pMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, pDatetime, pTimeFrame, pHost, pPort, pEventsServerClient, callBackFunction) {
|
||||
function initialize(pMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, pDatetime, pTimeFrame, pHost, pPort, pEventsServerClient, callBackFunction, scheme='http') {
|
||||
try {
|
||||
callBackWhenFileReceived = callBackFunction
|
||||
|
||||
@@ -55,7 +55,7 @@ function newDailyFiles() {
|
||||
let timeFrames
|
||||
|
||||
fileCloud = newFileCloud()
|
||||
fileCloud.initialize(pBot, pHost, pPort)
|
||||
fileCloud.initialize(pBot, pHost, pPort, scheme)
|
||||
|
||||
/* Config Validations */
|
||||
if (pDataset.config.validTimeFrames === undefined) {
|
||||
|
||||
@@ -17,8 +17,8 @@ function newFileCloud () {
|
||||
let fileStorage
|
||||
return thisObject
|
||||
|
||||
function initialize (pBot, pHost, pPort) {
|
||||
fileStorage = newFileStorage(pHost, pPort)
|
||||
function initialize (pBot, pHost, pPort, scheme='http') {
|
||||
fileStorage = newFileStorage(pHost, pPort, scheme)
|
||||
}
|
||||
|
||||
function getFile (pMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, ptimeFrameLabel, pDatetime, pSequence, pDataRange, pTimeFrames, callBackFunction) {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
function newFileStorage(host, port) {
|
||||
function newFileStorage(host, port, scheme='http') {
|
||||
const MODULE_NAME = 'File Storage'
|
||||
const INFO_LOG = false
|
||||
const logger = newWebDebugLog()
|
||||
@@ -40,7 +40,7 @@ function newFileStorage(host, port) {
|
||||
let url
|
||||
|
||||
if (host !== undefined && port !== undefined) {
|
||||
url = 'http://' + host + ':' + port + '/' + folder + filePath
|
||||
url = scheme + '://' + host + ':' + port + '/' + folder + filePath
|
||||
} else {
|
||||
url = folder + filePath
|
||||
}
|
||||
|
||||
@@ -80,7 +80,8 @@ function newMarketFiles() {
|
||||
pHost,
|
||||
pPort,
|
||||
pEventsServerClient,
|
||||
callBackFunction) {
|
||||
callBackFunction,
|
||||
scheme='http') {
|
||||
try {
|
||||
let timeFrames
|
||||
|
||||
@@ -94,7 +95,7 @@ function newMarketFiles() {
|
||||
eventsServerClient = pEventsServerClient
|
||||
|
||||
fileCloud = newFileCloud()
|
||||
fileCloud.initialize(pBot, pHost, pPort)
|
||||
fileCloud.initialize(pBot, pHost, pPort, scheme)
|
||||
|
||||
/* Some Validations */
|
||||
if (dataset.config.validTimeFrames === undefined) {
|
||||
|
||||
@@ -218,11 +218,12 @@ function newEventsServerClient(lanNetworkNode) {
|
||||
try {
|
||||
let host
|
||||
let port
|
||||
/* At this point the node does not have the payload property yet, that is why we have to do this manually */
|
||||
let extwsurl
|
||||
try {
|
||||
let config = JSON.parse(lanNetworkNode.config)
|
||||
host = config.host
|
||||
port = config.webSocketsPort
|
||||
extwsurl = config.webSocketsExternalURL
|
||||
|
||||
/* Check if we really have to stablish the connection. */
|
||||
if (config.autoConnect === false) { return }
|
||||
@@ -268,8 +269,12 @@ function newEventsServerClient(lanNetworkNode) {
|
||||
return
|
||||
}
|
||||
|
||||
const WEB_SOCKETS_URL = 'ws://' + host + ':' + port + ''
|
||||
let wsurl = 'ws://' + host + ':' + port + ''
|
||||
if (extwsurl !== undefined) {
|
||||
wsurl = extwsurl
|
||||
}
|
||||
|
||||
const WEB_SOCKETS_URL = wsurl
|
||||
WEB_SOCKETS_CONNECTION = new WebSocket(WEB_SOCKETS_URL)
|
||||
WEB_SOCKETS_CONNECTION.onerror = error => {
|
||||
console.log('WebSocket error:' + JSON.stringify(error))
|
||||
|
||||
@@ -74,7 +74,7 @@ function newProductStorage(name) {
|
||||
}
|
||||
}
|
||||
|
||||
function initialize(mine, bot, session, product, exchange, market, pDatetime, pTimeFrame, host, port, eventsServerClient, callBackFunction) {
|
||||
function initialize(mine, bot, session, product, exchange, market, pDatetime, pTimeFrame, host, port, eventsServerClient, callBackFunction, scheme='http') {
|
||||
try {
|
||||
datetime = pDatetime
|
||||
timeFrame = pTimeFrame
|
||||
@@ -90,7 +90,7 @@ function newProductStorage(name) {
|
||||
dataSetsToLoad++
|
||||
|
||||
let marketFiles = newMarketFiles()
|
||||
marketFiles.initialize(mine, bot, session, product, dataset, exchange, market, host, port, eventsServerClient, onMarketFileReady)
|
||||
marketFiles.initialize(mine, bot, session, product, dataset, exchange, market, host, port, eventsServerClient, onMarketFileReady, scheme)
|
||||
thisObject.marketFiles.push(marketFiles)
|
||||
}
|
||||
break
|
||||
@@ -99,7 +99,7 @@ function newProductStorage(name) {
|
||||
dataSetsToLoad++
|
||||
|
||||
let dailyFiles = newDailyFiles()
|
||||
dailyFiles.initialize(mine, bot, session, product, dataset, exchange, market, pDatetime, pTimeFrame, host, port, eventsServerClient, onDailyFileReady)
|
||||
dailyFiles.initialize(mine, bot, session, product, dataset, exchange, market, pDatetime, pTimeFrame, host, port, eventsServerClient, onDailyFileReady, scheme)
|
||||
thisObject.dailyFiles.push(dailyFiles)
|
||||
}
|
||||
break
|
||||
@@ -108,7 +108,7 @@ function newProductStorage(name) {
|
||||
dataSetsToLoad++
|
||||
|
||||
let singleFile = newSingleFile()
|
||||
singleFile.initialize(mine, bot, session, product, dataset, exchange, market, host, port, eventsServerClient, onSingleFileReady)
|
||||
singleFile.initialize(mine, bot, session, product, dataset, exchange, market, host, port, eventsServerClient, onSingleFileReady, scheme)
|
||||
thisObject.singleFile.push(singleFile)
|
||||
}
|
||||
break
|
||||
@@ -117,7 +117,7 @@ function newProductStorage(name) {
|
||||
dataSetsToLoad++
|
||||
|
||||
let fileSequences = newFileSequence()
|
||||
fileSequences.initialize(mine, bot, session, product, dataset, exchange, market, host, port, eventsServerClient, onFileSequenceReady)
|
||||
fileSequences.initialize(mine, bot, session, product, dataset, exchange, market, host, port, eventsServerClient, onFileSequenceReady, scheme)
|
||||
thisObject.fileSequences.push(fileSequences)
|
||||
}
|
||||
break
|
||||
|
||||
+1
-1
@@ -348,13 +348,13 @@ exports.newAlgorithmicTradingBotModulesTradingSystem = function (processIndex) {
|
||||
}
|
||||
if (errorMessage !== undefined) {
|
||||
tradingSystem.addError([node.id, errorMessage, docs])
|
||||
TS.projects.foundations.globals.loggerVariables.VARIABLES_BY_PROCESS_INDEX_MAP.get(processIndex).BOT_MAIN_LOOP_LOGGER_MODULE_OBJECT.write(MODULE_NAME, '[ERROR] evalCondition -> errorMessage = ' + errorMessage)
|
||||
}
|
||||
if (value !== undefined) {
|
||||
tradingSystem.values.push([node.id, value])
|
||||
}
|
||||
|
||||
TS.projects.foundations.globals.loggerVariables.VARIABLES_BY_PROCESS_INDEX_MAP.get(processIndex).BOT_MAIN_LOOP_LOGGER_MODULE_OBJECT.write(MODULE_NAME, '[INFO] evalCondition -> value = ' + value)
|
||||
TS.projects.foundations.globals.loggerVariables.VARIABLES_BY_PROCESS_INDEX_MAP.get(processIndex).BOT_MAIN_LOOP_LOGGER_MODULE_OBJECT.write(MODULE_NAME, '[INFO] evalCondition -> errorMessage = ' + errorMessage)
|
||||
}
|
||||
|
||||
function evalFormula(node) {
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -90,7 +90,7 @@ exports.newDataMiningBotModulesCheckWebhook = function (processIndex) {
|
||||
try {
|
||||
let http = SA.nodeModules.http
|
||||
let url = 'http://' + global.env.WEB_SERVER_URL +
|
||||
':' + global.env.CLIENT_HTTP_INTERFACE_PORT +
|
||||
':' + global.env.PLATFORM_HTTP_INTERFACE_PORT +
|
||||
'/Webhook/Fetch-Messages/' +
|
||||
TS.projects.foundations.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.parentNode.parentNode.config.codeName + "/" +
|
||||
TS.projects.foundations.globals.taskConstants.TASK_NODE.parentNode.parentNode.parentNode.referenceParent.baseAsset.referenceParent.config.codeName + "-" +
|
||||
|
||||
@@ -207,7 +207,7 @@ function newFoundationsDocsFooter() {
|
||||
HTML = HTML + '<div class="docs-footer-row">'
|
||||
HTML = HTML + '<div class="docs-footer-cell">'
|
||||
HTML = HTML + '<h4>Join the Conversation</h4>'
|
||||
HTML = HTML + '<p>We have a new <a href="https://discord.gg/CGeKC6WQQb" target="_blank">Discord Server</a> with multiple channels, or you may join the original individual Telegram groups listed to the right.</p>'
|
||||
HTML = HTML + '<p>We have a new <a href="https://discord.gg/CGeKC6WQQb" target="_blank">Discord Server</a> with multiple channels and a new <a href="https://forum.superalgos.org/" target="_blank">Community Forum</a> or you may join the original individual Telegram groups listed to the right.</p>'
|
||||
HTML = HTML + '</div>'
|
||||
|
||||
HTML = HTML + '<div class="docs-footer-cell">'
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File renamed without changes.
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
+136344
-13727
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -2,7 +2,14 @@
|
||||
"type": "User Manual",
|
||||
"definition": {
|
||||
"text": "The User Manual covers Superalgos from A to Z, starting with a comprehensive conceptual introduction. The book covers functionality and features, along with the description of each hierarchy. It is organized for continuous reading and will take you from the starter to the advanced Superalgos user level.",
|
||||
"updated": 1610309402992
|
||||
"updated": 1610309402992,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die User Manual (Benutzerhandbuch) behandelt Superalgos von A bis Z, beginnend mit einer umfassenden konzeptionellen Einführung. Das Buch deckt die Funktionalität und die Merkmale zusammen mit der Beschreibung der einzelnen Hierarchien ab. Es ist so aufgebaut, dass es kontinuierlich gelesen werden kann und führt Sie vom Einsteiger bis zum fortgeschrittenen Superalgos-User (Benutzer).",
|
||||
"updated": 1634758568256
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
|
||||
@@ -61,6 +61,10 @@
|
||||
{
|
||||
"style": "List",
|
||||
"text": "webSocketsPort is the port used by the system to communicate over the local area network, by default set at 18041."
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "webSocketsExternalURL is the URL used by the system to communicate over the wide area network, by default set undefined."
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
+10
@@ -11,6 +11,11 @@
|
||||
"text": "Proses pembaruan berjalan lancar namun tidak ada perubahan karena versi instalasi sudah terbaru dengan branch sekarang . Tidak perlu tindakan lebih lanjut.",
|
||||
"updated": 1616761518007,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der Aktualisierungsprozess wurde erfolgreich durchgeführt, aber es wurden keine Änderungen vorgenommen, da Ihre Installation mit dem aktuellen Zweig auf dem neuesten Stand ist. Es sind keine weiteren Maßnahmen erforderlich.",
|
||||
"updated": 1634485256076
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -25,6 +30,11 @@
|
||||
"text": "Anda sudah diversi paling up-to-date. Tidak perlu me-reboot Client atau merefresh halaman UI ini.",
|
||||
"updated": 1613892633200,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie sind auf dem neuesten Stand. Sie müssen den Client nicht neu starten oder die UI-Website aktualisieren.",
|
||||
"updated": 1634485290648
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+48
-6
@@ -4,32 +4,74 @@
|
||||
"type": "Fundamental Charting Space Concepts",
|
||||
"definition": {
|
||||
"text": "The charting space provides great control over how information generated on other hierarchies is visualized.",
|
||||
"updated": 1610134431825
|
||||
"updated": 1610134431825,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der Charting Space bietet eine große Kontrolle darüber, wie die auf anderen Hierarchien erzeugten Informationen visualisiert werden.",
|
||||
"updated": 1634486374442
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Conceptually, Superalgos places the focus on the visual experience. Not just because it’s nice to see data in a graphical representation, but because our analysis capabilities are extended when we incorporate senses in the mix. Human’s capacity to think abstractly may be more or less developed across individuals, but one thing is clear: our thought process benefits from being able to see.",
|
||||
"updated": 1610134441689
|
||||
"updated": 1610134441689,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Das Konzept von Superalgos legt den Schwerpunkt auf die visuelle Erfahrung. Nicht nur, weil es schön ist, Daten in einer grafischen Darstellung zu sehen, sondern weil unsere Analysefähigkeiten erweitert werden, wenn wir Sinne mit einbeziehen. Die Fähigkeit des Menschen, abstrakt zu denken, mag bei jedem Menschen mehr oder weniger ausgeprägt sein, aber eines ist klar: Unser Denkprozess profitiert davon, dass wir sehen können.",
|
||||
"updated": 1634486364773
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The Charting Space is conceived to provide an unprecedented level of flexibility and control over the way information is displayed graphically. Everything that you see in the form of charts when you pull the slider down is configured in the charting space hierarchy while using the information available in other hierarchies.",
|
||||
"updated": 1610134480039
|
||||
"updated": 1610134480039,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der Charting Space ist so konzipiert, dass er ein noch nie dagewesenes Maß an Flexibilität und Kontrolle über die Art und Weise bietet, wie Informationen grafisch dargestellt werden. Alles, was Sie in Form von Diagrammen sehen, wenn Sie den Schieberegler nach unten ziehen, wird in der Hierarchie des Charting Space konfiguriert, wobei die in anderen Hierarchien verfügbaren Informationen verwendet werden.",
|
||||
"updated": 1634486341592
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "In other words, you use the charting space hierarchy to create Time Machines and Timeline Charts, and to configure their scales and so on, but the information feeding those charts come from bots running on the Network hierarchy. Those bots obtain exchange and market information from the Crypto Ecosystem hierarchy via references, and their source code is defined in Data Mines.",
|
||||
"updated": 1610134533861
|
||||
"updated": 1610134533861,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Mit anderen Worten: Sie verwenden die Charting Space Hierarchie, um Time Machines und Timeline Charts zu erstellen und ihre Skalen usw. zu konfigurieren, aber die Informationen, die diese Charts speisen, stammen von Bots, die auf der Network hierarchy ( Hierarchie) laufen. Diese Bots beziehen Börsen- und Marktinformationen über Referenzen aus der Crypto Ecosystem Hierarchie, und ihr Quellcode ist in Data Mines definiert.",
|
||||
"updated": 1634486583344
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The above means that, in order to have information to visualize, you will first need to run sensor and indicator bots. We call that data mining, and it’s done from the data mining section of the network hierarchy."
|
||||
"text": "The above means that, in order to have information to visualize, you will first need to run sensor and indicator bots. We call that data mining, and it’s done from the data mining section of the network hierarchy.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Das bedeutet, dass Sie zunächst Sensor- und Indicator-Bots ausführen müssen, um Informationen zur Visualisierung zu erhalten. Wir nennen das Data-Mining, und es wird im Data-Mining-Bereich der network hierarchy durchgeführt.",
|
||||
"updated": 1634486674422
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The workspaces shipping with the system feature several configurations of exchanges, markets, and charts that you may start using right away. To configure your own charts, you will need to learn the basics of the Charting Space, and that is exactly the information covered on these pages.",
|
||||
"updated": 1610134602649
|
||||
"updated": 1610134602649,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die mit dem System gelieferten Arbeitsbereiche enthalten mehrere Konfigurationen von Börsen, Märkten und Charts, die Sie sofort verwenden können. Um Ihre eigenen Charts zu konfigurieren, müssen Sie die Grundlagen des Charting Space erlernen, und genau diese Informationen werden auf diesen Seiten behandelt.",
|
||||
"updated": 1634486718746
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+8
-1
@@ -4,7 +4,14 @@
|
||||
"type": "Charting Space Hierarchy",
|
||||
"definition": {
|
||||
"text": "The charting space hierarchy organizes the charts on the Viewport and controls their behavior.",
|
||||
"updated": 1610134676796
|
||||
"updated": 1610134676796,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Hierarchie des Charting Space organisiert die Diagramme im Viewport und steuert ihr Verhalten.",
|
||||
"updated": 1634486807958
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
|
||||
+9
-10
@@ -7,7 +7,7 @@
|
||||
"updated": 1613822257340,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"language": "DE",
|
||||
"text": "Die Docs sind ursprünglich in Englisch geschrieben. Superalgos zugänglicher zu machen ist ein wichtiges Ziel, um die Gemeinschaft und die Community zu vergrößern. Die Übersetzung von Tutorials und Software-Dokumentation in andere Sprachen als Englisch ist von großem Wert! Ins deutsche übersetzt von gitforkgit.",
|
||||
"updated": 1634133734053,
|
||||
"style": "Definition"
|
||||
@@ -181,7 +181,8 @@
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Bewährte Praktiken:",
|
||||
"updated": 1634065685236
|
||||
"updated": 1634065685236,
|
||||
"style": "Title"
|
||||
},
|
||||
{
|
||||
"language": "ES",
|
||||
@@ -198,8 +199,7 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Lo mencionado no afecta su trabajo directamente,pero es bueno tenerlo en cuenta ya que significa que muchos contribuyentes pueden estar trabajando la misma página al mismo tiempo. He aqui la necesidad de actualizar constantemente y de solicitar la contribución a menudo.",
|
||||
"updated": 1633172414535,
|
||||
"style": "Success"
|
||||
"updated": 1633172414535
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -224,8 +224,8 @@
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Make sure your system is up to date running the app.update command.",
|
||||
"updated": 1616762308286,
|
||||
"text": "Make sure your system is up to date running the app.update command in the Searchbar/Command Line at the top of these Docs.",
|
||||
"updated": 1634589766751,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
@@ -490,8 +490,7 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Notará que si abre los documentos mientras el tutorial está corriendo, los documentos automáticamente carga l página correspondiente al paso del tutorial, entonces puede editarlo. Esto es de gran ayuda, ya que podrá traducir la página y ver como se ve en la ventanta del tutorial al mismo tiempo.",
|
||||
"updated": 1633279236805,
|
||||
"style": "Text"
|
||||
"updated": 1633279236805
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -510,9 +509,9 @@
|
||||
"language": "ES",
|
||||
"text": "De todos modos, este no es siempre el caso. Algunos pasos de los tutoriales están configurados para cerrar los dcumentos o el editor, y cuando abre los documentos manualmente, la página del paso del tutorial no se carga automáticamente. En estos casos, deberá buscar la pagina por su nombre — la cual debería coincidir con el titulo del paso en el tutorial — podrá acceder a la página en forma manual.",
|
||||
"updated": 1633279497908,
|
||||
"style": "Important"
|
||||
"style": "Important"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
+64
-8
@@ -4,43 +4,99 @@
|
||||
"type": "Data Mining - Introduction",
|
||||
"definition": {
|
||||
"text": "Data Mining in Superalgos means extracting data from external sources and processing that data in order to have it ready for consumption by trading strategies.",
|
||||
"updated": 1622200589433
|
||||
"updated": 1622200589433,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Data Mining in Superalgos bedeutet die Extraktion von Daten aus externen Quellen und die Verarbeitung dieser Daten, um sie für Handelsstrategien nutzbar zu machen. Ins deutsche übersetzt von gitforkgit.",
|
||||
"updated": 1634502828004
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Superalgos offers an extensive set of Data Mining tools. These tools allow users to fetch data from external sources, process that data into more elaborate datasets, plot the datasets within the Charting Space, feed ML Bot's models, and ultimately consume the data within their trading strategies.",
|
||||
"updated": 1622200769538
|
||||
"updated": 1622200769538,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos bietet ein umfangreiches Set von Data-Mining-Tools. Mit diesen Werkzeugen können Benutzer Daten aus externen Quellen abrufen, diese Daten zu komplexeren Datensätzen verarbeiten, die Datensätze im Charting Space darstellen, die Modelle von ML Bot füttern und die Daten schließlich in ihre Handelsstrategien einfließen lassen.",
|
||||
"updated": 1634502210131
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "The Big Picture",
|
||||
"updated": 1622188702833
|
||||
"updated": 1622188702833,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Das Große Ganze",
|
||||
"updated": 1634502312960
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "All of the data inside the Superalgos system has an origin somewhere outside the system, usually somewhere on the Internet. There are currently 3 ways to bring data into the system:",
|
||||
"updated": 1622200785987
|
||||
"updated": 1622200785987,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Alle Daten innerhalb des Superalgos-Systems haben ihren Ursprung irgendwo außerhalb des Systems, normalerweise irgendwo im Internet. Derzeit gibt es 3 Möglichkeiten, Daten in das System einzubringen:",
|
||||
"updated": 1634502941525
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "By coding an Algorithm: with this method, users who have developer skills can extract data from any source imaginable. The way to do it is by implementing a new process within the already existing Sensor Bot. In other words, the sensor bot allows users to write code that extracts data from different places outside of the system. This method is ideal for when it is not possible to use the second method listed below. An example of such algorithms is the Historic-OHLCVs which uses the CCXT open source library to extract one minute candles from any exchange supported by that library.",
|
||||
"updated": 1622201355726
|
||||
"updated": 1622201355726,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Durch das Programmieren eines Algorithmus: Mit dieser Methode können Benutzer, die über Entwicklerfähigkeiten (Programmierwissen) verfügen, Daten aus jeder erdenklichen Quelle extrahieren. Dies geschieht durch die Implementierung eines neuen Prozesses innerhalb des bereits bestehenden Sensor Bots. Mit anderen Worten: Der Sensor Bot ermöglicht es den Benutzern, Code zu schreiben, der Daten von verschiedenen Stellen außerhalb des Systems extrahiert. Diese Methode ist ideal, wenn es nicht möglich ist, die zweite unten aufgeführte Methode zu verwenden. Ein Beispiel für einen solchen Algorithmus ist der Historic-OHLCVs, der die Open-Source-Bibliothek CCXT verwendet, um einminütige Kerzen von jeder von dieser Bibliothek unterstützten Börse zu extrahieren.",
|
||||
"updated": 1634503371051
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Without coding an Algorithm: (available since Beta 10) via the API Data Fetcher Bot. This method involves designing an API Map which is later feed to an API Data Fetcher Bot at runtime. From there it can fetch data from APIs without needing the user to write a single line of code.",
|
||||
"updated": 1622201515378
|
||||
"updated": 1622201515378,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ohne einen Algorithmus zu programmieren: (verfügbar seit Beta 10) über den API Data Fetcher Bot. Bei dieser Methode wird eine API Map entworfen, die später zur Laufzeit an einen API Data Fetcher Bot übergeben wird. Von dort aus kann er Daten von APIs abrufen, ohne dass der Benutzer eine einzige Zeile Code schreiben muss.",
|
||||
"updated": 1634503494799
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "External processing: it is also possible to gather data and process it outside the system. Once data has been processed in this manner, it can be put in the right folder, with the right format, and the system will pick it up from there. This use case is not the most popular, but it is a valid possibility.",
|
||||
"updated": 1622201656015
|
||||
"updated": 1622201656015,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Externe Verarbeitung: Es ist auch möglich, Daten zu sammeln und sie außerhalb des Systems zu verarbeiten. Sobald die Daten auf diese Weise verarbeitet wurden, können sie in den richtigen Ordner mit dem richtigen Format gelegt werden, und das System übernimmt sie von dort. Dieser Anwendungsfall ist nicht der populärste, aber er ist eine gute Möglichkeit.",
|
||||
"updated": 1634503579635
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Once data is within the system, it is then processed for different reasons by Indicator Bots. Some of the processed data might be plotted, some might feed machine learning bots, and some might be consumed by a Trading Strategy.",
|
||||
"updated": 1622201764822
|
||||
"updated": 1622201764822,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sobald die Daten im System sind, werden sie aus verschiedenen Gründen von Indikator-Bots verarbeitet. Einige der verarbeiteten Daten werden geplottet, andere können Bots für maschinelles Lernen füttern, und wieder andere können von einer Trading Strategy (Handelsstrategie) genutzt werden.",
|
||||
"updated": 1634504086365
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+153
-19
@@ -4,22 +4,50 @@
|
||||
"type": "Data Mining - Workflows",
|
||||
"definition": {
|
||||
"text": "Superalgos enables users to setup powerful data mining operations. This page will introduce the workflows that are involved in data mining.",
|
||||
"updated": 1622201830789
|
||||
"updated": 1622201830789,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos ermöglicht es Benutzern, leistungsstarke Data-Mining-Operationen einzurichten. Auf dieser Seite werden die Arbeitsabläufe vorgestellt, die beim Data Mining involviert sind.",
|
||||
"updated": 1634578254653
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "In general, data flows from the Internet into the Superalgos system. Once inside, it is then processed and reprocessed and finally consumed by trading strategies.",
|
||||
"updated": 1622201876819
|
||||
"updated": 1622201876819,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Im Allgemeinen fließen die Daten aus dem Internet in das Superalgos-System. Dort werden sie anschließend verarbeitet und weiterverarbeitet und schließlich von den trading strategies (Handelsstrategien) verbraucht.",
|
||||
"updated": 1634578330154
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "As more users jump in to contribute and create more assets that they share with the community, the data mining capabilities of the system will expand.",
|
||||
"updated": 1622201931367
|
||||
"updated": 1622201931367,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Bedingt dadurch, dass sich mehr Nutzer beteiligen und mehr Inhalte erstellen, die sie mit der Gemeinschaft teilen, werden die Data-Mining-Funktionen des Systems erweitert.",
|
||||
"updated": 1634578512210
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Two Main Data Workflows"
|
||||
"text": "Two Main Data Workflows",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die zwei Haupt Daten-Workflows:",
|
||||
"updated": 1634578558625
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
@@ -28,74 +56,180 @@
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Sensor Bot Workflow: Data arrives into the system through a Sensor Bot. In this main workflow, the resulting dataset serves as an input for an Indicator Bot that will further process it. ",
|
||||
"updated": 1622202312743
|
||||
"updated": 1622202312743,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sensor Bot Workflow: Die Daten werden über einen Sensor Bot in das System eingespeist. In diesem Haupt-Workflow dient der resultierende Datensatz als Input für einen Indicator Bot, der ihn weiterverarbeitet.",
|
||||
"updated": 1634580249065
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Success",
|
||||
"text": "Why? Because the data arrives in a format that is not standardized to be consumed by trading strategies or plotted at the charts just yet (except for Webhooks that record data in the Single-File Dataset type which can be consumed by plotters and trading strategies)."
|
||||
"text": "Why? Because the data arrives in a format that is not standardized to be consumed by trading strategies or plotted at the charts just yet (except for Webhooks that record data in the Single-File Dataset type which can be consumed by plotters and trading strategies).",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Warum? Weil die Daten in einem Format ankommen, das noch nicht standardisiert ist, um von Handelsstrategien verarbeitet oder in Charts dargestellt zu werden (mit Ausnahme von Webhooks, die Daten im Typ Single-File Dataset aufzeichnen, der von Plottern und trading strategies (Handelsstrategien) verarbeitet werden kann).",
|
||||
"updated": 1634580399832
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "API Data Fetcher Bot Workflow: Data arrives into the system through an API Data Fetcher Bot. In this main workflow, the resulting dataset serves as an input for an Indicator Bot that will further process it.",
|
||||
"updated": 1622202181798
|
||||
"updated": 1622202181798,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "API Data Fetcher Bot Workflow: Die Daten werden über einen API Data Fetcher Bot in das System eingespeist. In diesem Haupt-Workflow dient der resultierende Datensatz als Eingabe für einen Indicator Bot, der ihn danach weiter verarbeitet.",
|
||||
"updated": 1634580475107
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "The data arriving from an external source is considered Raw Data. Both of these 2 workflows produce Raw Data that has to be digested by Indicator Bots.",
|
||||
"updated": 1622202291043
|
||||
"updated": 1622202291043,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Daten, die von einer externen Quelle kommen, werden als Raw Data (Rohdaten) betrachtet. Beide Workflows erzeugen Rohdaten, die von Indikator-Bots verarbeitet werden müssen.",
|
||||
"updated": 1634580517112
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "Raw Data -> Indicator Bots",
|
||||
"updated": 1621698286836
|
||||
"updated": 1621698286836,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Rohdaten -> Indicator-Bots",
|
||||
"updated": 1634580556564
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Indicator bots have two different purposes. "
|
||||
"text": "Indicator bots have two different purposes:",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indicator-Bots haben zwei unterschiedliche Zwecke:",
|
||||
"updated": 1634580952464
|
||||
}
|
||||
],
|
||||
"updated": 1634580879323
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Standardize Datasets: They are used for standardization of raw data extracted from the Internet by a Sensor Bot or an API Data Fetcher Bot. Once data is standardized, it can be run through other Indicator Bots that will extract the juice out of them. Once standardized, data can also be plotted and consumed by Trading Strategies. By standardizing, we are specifically referring to transforming the data into a Dataset type that can be used for plotting charts, or feeding Learning and Trading Bots. These Dataset types are Multi-Time-Frame-Daily and Multi-Time-Frame-Market.",
|
||||
"updated": 1622203207179
|
||||
"updated": 1622203207179,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Datensätze standardisieren: Sie werden zur Standardisierung von Rohdaten verwendet, die von einem Sensor Bot oder einem API Data Fetcher Bot aus dem Internet extrahiert wurden. Sobald die Daten standardisiert sind, können sie durch andere Indikator-Bots geleitet werden, die das Beste aus ihnen herausholen. Sobald die Daten standardisiert sind, können sie auch geplottet und von Trading Strategies (Handelsstrategien) verwendet werden. Mit Standardisierung meinen wir insbesondere die Umwandlung der Daten in einen Dataset Typ, der zum Plotten von Diagrammen oder zum Füttern von Lern- und Trading-Bots verwendet werden kann. Diese Datensatztypen sind Multi-Time-Frame-Daily und Multi-Time-Frame-Market.",
|
||||
"updated": 1634582999079
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Process Data: This means processing the data in any way that makes sense for users. Many users use Indicator Bots to calculate standard indicators, others calculate non-standard stuff, even ideas of what could be useful to extract from a certain dataset can be implemented. The system is open and allows users to do just that, play with the data by transforming it in any way they wish.",
|
||||
"updated": 1622203469938
|
||||
"updated": 1622203469938,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Daten verarbeiten: Dies bedeutet, dass die Daten auf jede Art und Weise verarbeitet werden, die für die Nutzer sinnvoll ist. Viele Nutzer verwenden Indicator Bots, um Standardindikatoren zu berechnen, andere berechnen nicht standardisierte Dinge, sogar Ideen, was aus einem bestimmten Datensatz nützlich sein könnte, können umgesetzt werden. Das System ist offen und erlaubt es den Nutzern, mit den Daten zu spielen, indem sie sie auf jede beliebige Art und Weise umwandeln.",
|
||||
"updated": 1634583321196
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "Indicators -> Plotters",
|
||||
"updated": 1621900608845
|
||||
"updated": 1621900608845,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indicators -> Plotter",
|
||||
"updated": 1634583699357
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Plotters are tools for users, not for bots. Plotters will render the information of a Dataset at the charts based on the plotter's definition. This allows users to visually discover patterns in datasets and generate ideas. These ideas can then help the user decide how to process the data further or feed the data to a Learning Bot or a Trading Bot.",
|
||||
"updated": 1622203827359
|
||||
"updated": 1622203827359,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Plotter sind Werkzeuge für Benutzer, nicht für Bots. Plotter stellen die Informationen eines Datensatzes auf der Grundlage der Definition des Plotters in den Diagrammen dar. Auf diese Weise können Nutzer visuell Muster in Datensätzen entdecken und Ideen entwickeln. Diese Ideen können dem Nutzer dann bei der Entscheidung helfen, wie er die Daten weiterverarbeitet oder sie an einen Learning Bot oder Trading Bot weitergibt.",
|
||||
"updated": 1634583962530
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Important",
|
||||
"text": "Plotters can only read data from certain Dataset types, you will learn which ones later on in this Topic."
|
||||
"text": "Plotters can only read data from certain Dataset types, you will learn which ones later on in this Topic.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Plotter können nur Daten von bestimmten Dataset Typen lesen. Welche das sind, erfahren Sie später in diesem Thema.",
|
||||
"updated": 1634583996041
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "Indicators -> Learning Bots (under development)",
|
||||
"updated": 1621698378105
|
||||
"updated": 1621698378105,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indikatoren -> Learning Bots (stecken mitten in der Entwicklung):",
|
||||
"updated": 1634585606476
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Learning Bots have access to mined data which they use to train their AI Models. Once trained, these AI Models can be used by trading strategies to request predictions and act upon them.",
|
||||
"updated": 1622204001242
|
||||
"updated": 1622204001242,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Learning Bots haben Zugang zu geschürften Daten, die sie zum Trainieren ihrer KI-Modelle verwenden. Einmal trainiert, können diese KI-Modelle von Trading-Strategien genutzt werden, um Vorhersagen anzufordern und daraufhin zu handeln.",
|
||||
"updated": 1634585521697
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "Indicators -> Trading Bots",
|
||||
"updated": 1621698387166
|
||||
"updated": 1621698387166,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indikatoren -> Trading Bots",
|
||||
"updated": 1634585651731
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Trading bots are the ultimate consumer of data. They use the data they receive to make trading decisions based on their definitions. The ultimate purpose of the whole Data Mining operation is to digest data so that it is easily accessible for trading strategies.",
|
||||
"updated": 1622204325508
|
||||
"updated": 1622204325508,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Trading Bots sind die ultimativen Konsumenten von Daten. Sie nutzen die Daten, die sie erhalten, um auf der Grundlage ihrer Definitionen Handelsentscheidungen zu treffen. Der ultimative Zweck der gesamten Data-Mining-Operation besteht darin, Daten so zu verarbeiten, dass sie für Handelsstrategien leicht zugänglich sind.",
|
||||
"updated": 1634585828124
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+32
-4
@@ -4,7 +4,14 @@
|
||||
"type": "Data Mining - Dataset Types",
|
||||
"definition": {
|
||||
"text": "Superalgos organizes data into datasets. These datasets are standardized across the system using different type definitions.",
|
||||
"updated": 1622204454559
|
||||
"updated": 1622204454559,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zusammenfassung: Superalgos organisiert Daten in Datasets (Datensätze). Diese Datensätze sind systemübergreifend durch unterschiedliche Typdefinitionen standardisiert.",
|
||||
"updated": 1634586751277
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
@@ -15,16 +22,37 @@
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Dataset Types",
|
||||
"updated": 1622227827875
|
||||
"updated": 1622227827875,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Datensatz-Typen:",
|
||||
"updated": 1634586996444
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "This is the complete list of Dataset types currently supported by the system:"
|
||||
"text": "This is the complete list of Dataset types currently supported by the system:",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Dies ist die vollständige Liste der derzeit vom System unterstützten Dataset Typen:",
|
||||
"updated": 1634587492613
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Single-File: As the name suggests, this Dataset consists of only one file containing all the data. This Dataset type can be plotted and its data consumed by and within Trading Strategies. The API Data Fetcher Bot can also save Raw Data in this type of dataset, if needed.",
|
||||
"updated": 1622204763019
|
||||
"updated": 1622204763019,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Single-File (Einzeldatei): Wie der Name schon sagt, besteht dieses Dataset aus nur einer Datei, die alle Daten enthält. Dieser Dataset-Typ kann geplottet werden und seine Daten können von und in Handelsstrategien verwendet werden. Der API Data Fetcher Bot kann bei Bedarf auch Rohdaten in diesem Dataset-Typ speichern.",
|
||||
"updated": 1634588065048
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
|
||||
+104
-13
@@ -4,13 +4,27 @@
|
||||
"type": "Data Mining - Datasets Type Conversions",
|
||||
"definition": {
|
||||
"text": "Processes fetching data from the Internet are optimized for accessing a wide range of APIs available out there. The Dataset Type they use to store raw data is usually not the best one for data consumption within the system. For that reason Dataset Type conversions need to be done.",
|
||||
"updated": 1622205220555
|
||||
"updated": 1622205220555,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zusammenfassung: Prozesse, die Daten aus dem Internet abrufen, sind für den Zugriff auf eine breite Palette von APIs optimiert, die dort verfügbar sind. Der Dataset Type (Datentyp), den sie zum Speichern von Rohdaten verwenden, ist in der Regel nicht der beste für die Weiterverwendung innerhalb des Systems. Aus diesem Grund müssen Dataset-Typ-Konvertierungen vorgenommen werden.",
|
||||
"updated": 1634677302182
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Types of Dataset Conversions",
|
||||
"updated": 1622227863425
|
||||
"updated": 1622227863425,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Arten von Dataset-Konvertierungen:",
|
||||
"updated": 1634677318651
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
@@ -34,47 +48,110 @@
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "There are two ways to convert from one Dataset type to another. ",
|
||||
"updated": 1621699409527
|
||||
"updated": 1621699409527,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Folgende Arten von Dataset Konvertierungen sind derzeit im System implementiert:",
|
||||
"updated": 1634677350007
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Custom Code: Users can write code to handle the conversion in cases where the standard converter is not available for the type of conversion needed.",
|
||||
"updated": 1622205316515
|
||||
"updated": 1622205316515,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Benutzerdefinierter Code: Benutzer können Code schreiben, um die Konvertierung in den Fällen durchzuführen, in denen der Standardkonverter für die benötigte Art der Konvertierung nicht verfügbar ist.",
|
||||
"updated": 1634677385514
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Standard Converter: Use a standard converter to do the job. Currently there is only one Standard Converter and it works converting from One-Min-Daily Dataset type to Multi-Time-Frame-Daily and Multi-Time-Frame-Market Dataset types. ",
|
||||
"updated": 1621711423050
|
||||
"updated": 1621711423050,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Standardkonverter: Verwenden Sie einen Standardkonverter, um die Aufgabe zu erledigen. Derzeit gibt es nur einen Standardkonverter, der die Konvertierung von One-Min-Daily-Dataset-Typen in Multi-Time-Frame-Daily- und Multi-Time-Frame-Market-Dataset-Typen ermöglicht.",
|
||||
"updated": 1634677568153
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "Custom Code Example",
|
||||
"updated": 1622205366974
|
||||
"updated": 1622205366974,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Beispiel für custom (benutzerdefinierten) Code:",
|
||||
"updated": 1634677731371
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The Candles-Volumes indicator at the Master Data Mine converts One-Min candles and volumes into candles and volumes of 2 min, 3 min ecc.. up to 24hs. To do this, it runs a custom made algorithm that aggregates that information provided by the Exchange Raw Data Sensor Bot.",
|
||||
"updated": 1622191376005
|
||||
"updated": 1622191376005,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der Candles-Volumes-Indikator in der Master Data Mine konvertiert One-Min-Candles und Volumes in Candles und Volumes von 2 Minuten, 3 Minuten usw. bis zu 24 Stunden. Zu diesem Zweck wird ein speziell entwickelter Algorithmus ausgeführt, der die vom Exchange Raw Data Sensor Bot bereitgestellten Informationen aggregiert (zusammenfasst).",
|
||||
"updated": 1634678088585
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "The reason this was implemented as custom code is because when it was needed there was no standard converter and it has not been migrated to the currently existing one.",
|
||||
"updated": 1622205482848
|
||||
"updated": 1622205482848,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der Grund dafür, dass dies als benutzerdefinierter Code implementiert wurde, liegt darin, dass es zu dem Zeitpunkt, als es benötigt wurde, keinen Standardkonverter gab und er nicht in den derzeit bestehenden migriert wurde.",
|
||||
"updated": 1634678403439
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "Standard Converter Example",
|
||||
"updated": 1621701438440
|
||||
"updated": 1621701438440,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Beispiel für einen Standardkonverter:",
|
||||
"updated": 1634678436605
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The Asset Metrics Indicator Bot, defined at the Messari Data Mine, uses the Standard Converter from One-Min-Daily Dataset type to Multi-Time-Frame-Daily and Multi-Time-Frame-Market Dataset types. In order to use the converter, the bot's Process Definition nodes needs to have a framework of the converter defined within its config.",
|
||||
"updated": 1622205718679
|
||||
"updated": 1622205718679,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der Asset Metrics Indicator Bot, der in der Messari Data Mine definiert wurde, verwendet den Standardkonverter von dem One-Min-Daily-Dataset-Typ zu Multi-Time-Frame-Daily und Multi-Time-Frame-Market Dataset-Typen. Um den Konverter verwenden zu können, muss die Process Definition Node des Bots ein Framework des Konverters in seiner Konfiguration definiert haben.",
|
||||
"updated": 1634679002933
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "To convert to Multi-Time-Frame-Daily, set the framework name as follows:",
|
||||
"updated": 1622205768649
|
||||
"updated": 1622205768649,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zur Umstellung auf Multi-Time-Frame-Daily stellen Sie den Framework-Namen wie folgt ein:",
|
||||
"updated": 1634679069645
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
@@ -84,7 +161,14 @@
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "To convert to Multi-Time-Frame-Market, set the framework name like this:",
|
||||
"updated": 1622205804137
|
||||
"updated": 1622205804137,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zur Umwandlung in Multi-Time-Frame-Market setzen Sie den Framework-Namen wie folgt:",
|
||||
"updated": 1634679148016
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
@@ -94,7 +178,14 @@
|
||||
{
|
||||
"style": "Success",
|
||||
"text": "You will need the standard converter everytime you use the API Data Fetcher Bot to extract data from some Inernet API. The bot will usually save the data in a One-Min-Daily Dataset Type, and you will need to setup an Indicator Bot with two processes in order to convert the One-Min-Daily Dataset Type into a Multi-Time-Frame-Daily and a Multi-Time-Frame-Market Dataset Type.",
|
||||
"updated": 1622191511065
|
||||
"updated": 1622191511065,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie benötigen den Standardkonverter jedes Mal, wenn Sie den API Data Fetcher Bot zum Extrahieren von Daten aus einer Inernet-API verwenden. Der Bot speichert die Daten in der Regel in einem One-Min-Daily Dataset Type, und Sie müssen einen Indicator Bot mit zwei Prozessen einrichten, um den One-Min-Daily Dataset Type in einen Multi-Time-Frame-Daily und einen Multi-Time-Frame-Market Dataset Type zu konvertieren.",
|
||||
"updated": 1634679302507
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+240
-30
@@ -4,69 +4,167 @@
|
||||
"type": "Data Mining - Indicator Frameworks",
|
||||
"definition": {
|
||||
"text": "Indicator Bots are ready to run custom code, or run code provided by a framework in order to do their job.",
|
||||
"updated": 1621705750736
|
||||
"updated": 1621705750736,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indikator-Bots sind in der Lage, benutzerdefinierten Code auszuführen oder von einem Framework bereitgestellten Code auszuführen, um ihre Aufgabe zu erfüllen.",
|
||||
"updated": 1634679374909
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Types of Indicator Implementations",
|
||||
"updated": 1622211317016
|
||||
"updated": 1622211317016,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Arten von Indikator-Implementierungen:",
|
||||
"updated": 1634679396279
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Custom Code: This means the Indicator Bot will use custom made code to handle all data transformations.",
|
||||
"updated": 1621902418790
|
||||
"updated": 1621902418790,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Custom Code: Dies bedeutet, dass der Indikator-Bot benutzerdefinierten Code verwendet, um alle Datentransformationen durchzuführen.",
|
||||
"updated": 1634679427408
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "When running custom code, users have full control of the process and there is no limit on what can be done in terms of data manipulation. The trade off is that the user must be a developer."
|
||||
"text": "When running custom code, users have full control of the process and there is no limit on what can be done in terms of data manipulation. The trade off is that the user must be a developer.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Bei der Ausführung von benutzerdefiniertem Code haben die Benutzer die volle Kontrolle über den Prozess, und es gibt keine Einschränkungen bei der Daten-Verarbeitung/manipulation. Der Nachteil ist, dass der Benutzer ein developer (Entwickler) sein muss.",
|
||||
"updated": 1634679493287
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "UI-Defined: This means that the Indictor Bot will base its behaviour on the definitions at the UI including available frameworks, as well as the code snippets provided by the user.",
|
||||
"updated": 1622211583849
|
||||
"updated": 1622211583849,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "UI-Defined: Dies bedeutet, dass der Indictor Bot sein Verhalten auf die Definitionen auf der UI (Benutzeroberfläche), einschließlich der verfügbaren Frameworks, sowie auf die vom Benutzer bereitgestellten Codeschnipsel stützt.",
|
||||
"updated": 1634679552250
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "By running one of the available frameworks, an indicator can do powerful stuff while only leaving the task of writing a very tiny piece of code to do the data transformations. In this case the flexibility is reduced comparing to custom code, but ease of development is greatly increased.",
|
||||
"updated": 1622211470919
|
||||
"updated": 1622211470919,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Durch den Einsatz eines der verfügbaren Frameworks kann ein Indikator leistungsstarke Funktionen ausführen, wobei nur ein winziger Teil des Codes für die Datenumwandlung geschrieben werden muss. In diesem Fall ist die Flexibilität im Vergleich zu benutzerdefiniertem Code eingeschränkt, aber die Entwicklungsfreundlichkeit wird erheblich gesteigert.",
|
||||
"updated": 1634679804230
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Success",
|
||||
"text": "You don't need to be a developer to write these code snippets, most of the time they are very simple javascript code."
|
||||
"text": "You don't need to be a developer to write these code snippets, most of the time they are very simple javascript code.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie müssen kein Entwickler/Programmierer sein, um diese Codeschnipsel zu schreiben, meistens handelt es sich um sehr einfachen Javascript-Code.",
|
||||
"updated": 1634680675568
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Custom Code Indicators",
|
||||
"updated": 1621703361583
|
||||
"updated": 1621703361583,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Benutzerdefinierte Code-Indicators:",
|
||||
"updated": 1634680705374
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "Examples"
|
||||
"text": "Examples",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Beispiele:",
|
||||
"updated": 1634680725432
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "These two indicators are currently implemented with custom code."
|
||||
"text": "These two indicators are currently implemented with custom code.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Diese beiden Indikatoren werden derzeit mit benutzerdefiniertem Code implementiert:",
|
||||
"updated": 1634681185936
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Candles-Volumes: Located at the Candles Data Mine",
|
||||
"updated": 1622195776057
|
||||
"updated": 1622195776057,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Candles-Volumes: Zu finden in der Candles Data Mine",
|
||||
"updated": 1634681341936
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Bollinger-Bands: Located at the Bollinger Data Mine",
|
||||
"updated": 1622195696142
|
||||
"updated": 1622195696142,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Bollinger-Bands: Zu finden in der Bollinger Data Mine",
|
||||
"updated": 1634681442242
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "How to Implement Custom Code",
|
||||
"updated": 1622212152208
|
||||
"updated": 1622212152208,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wie man custom (benutzerdefinierten) Code implementiert:",
|
||||
"updated": 1634681585244
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The way to implement a Custom Code Indicator is to set up the config for the Bot's Process Definition using the botModule property. This tells the bot that there will be custom code used for this Indicator. This is an example of what it should look like:",
|
||||
"updated": 1622212134508
|
||||
"updated": 1622212134508,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Um einen benutzerdefinierten Code-Indikator zu implementieren, muss die Konfiguration für die Prozessdefinition des Bots mithilfe der Eigenschaft botModule eingerichtet werden. Dadurch wird dem Bot mitgeteilt, dass für diesen Indikator ein benutzerdefinierter Code verwendet wird. Dies ist ein Beispiel dafür, wie es aussehen sollte:",
|
||||
"updated": 1634681692004
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
@@ -76,17 +174,38 @@
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Then you will need to locate the Project Schema File for the project your bot belongs to. Inside of that file you will need to add some definitions in order for the system to be able to load your new module at runtime and later execute it once users run your bot implemented in this way.",
|
||||
"updated": 1622195849390
|
||||
"updated": 1622195849390,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Dann müssen Sie die Project Schema File (Datei) für das Projekt finden, zu dem Ihr Bot gehört. In dieser Datei müssen Sie einige Definitionen hinzufügen, damit das System in der Lage ist, Ihr neues Modul zur Laufzeit zu laden und später auszuführen, wenn Benutzer Ihren auf diese Weise implementierten Bot ausführen.",
|
||||
"updated": 1634681801694
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Success",
|
||||
"text": "Most likely your new Bot will be added to the Superalgos project, so you should find the Project Schema File inside the Projects folder.",
|
||||
"updated": 1622196885148
|
||||
"updated": 1622196885148,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Höchstwahrscheinlich wird Ihr neuer Bot zum Superalgos-Projekt hinzugefügt, so dass Sie die Project Schema File (Datei) im Ordner Projects finden sollten.",
|
||||
"updated": 1634681854110
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The definition you will need to add in the Schema file should look something like this:",
|
||||
"updated": 1622212304362
|
||||
"updated": 1622212304362,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Definition, die Sie in der Schemadatei hinzufügen müssen, sollte etwa so aussehen:",
|
||||
"updated": 1634681979851
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
@@ -96,61 +215,145 @@
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Finally, you will need to add a new Javascript module with your code to the codebase using the same file name you defined in the Schema file.",
|
||||
"updated": 1622212386180
|
||||
"updated": 1622212386180,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Schließlich müssen Sie ein neues Javascript-Modul mit Ihrem Code zur Codebasis hinzufügen und dabei denselben Dateinamen verwenden, den Sie in der Schema-Datei definiert haben.",
|
||||
"updated": 1634682668873
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "UI-Defined Indicators",
|
||||
"updated": 1621704044375
|
||||
"updated": 1621704044375,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "UI-definierte Indikatoren:",
|
||||
"updated": 1634682711171
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "In this case the list is long, as almost all other indicators in existence were build using a framework and defined at the UI with the minimun amount of code written by the users who created them."
|
||||
"text": "In this case the list is long, as almost all other indicators in existence were build using a framework and defined at the UI with the minimun amount of code written by the users who created them.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "In diesem Fall ist die Liste lang, da fast alle anderen existierenden Indikatoren mit Hilfe eines Frameworks erstellt und auf der UI (Benutzeroberfläche) mit einem Minimum an Code von den Benutzern, die sie erstellt haben, definiert wurden.",
|
||||
"updated": 1634682778514
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "Indicator Frameworks",
|
||||
"updated": 1621702926075
|
||||
"updated": 1621702926075,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indikator Frameworks:",
|
||||
"updated": 1634682793982
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "This is the complete list of available Indicator Frameworks",
|
||||
"updated": 1621702917486
|
||||
"updated": 1621702917486,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Dies ist die vollständige Liste der verfügbaren Indicator Frameworks:",
|
||||
"updated": 1634682819570
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "From-One-Min-To-Multi-Time-Frame-Daily: It is used to convert one Dataset from type One-Min-Daily to Multi-Time-Frame-Daily.",
|
||||
"updated": 1621703039301
|
||||
"updated": 1621703039301,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "From-One-Min-To-Multi-Time-Frame-Daily: Es wird verwendet, um ein Dataset (Datensatz) vom Typ One-Min-Daily zu Multi-Time-Frame-Daily zu konvertieren.",
|
||||
"updated": 1634683018997
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "From-One-Min-To-Multi-Time-Frame-Market: It is used to convert one Dataset from type One-Min-Daily to Multi-Time-Frame-Market.",
|
||||
"updated": 1621703053342
|
||||
"updated": 1621703053342,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "From-One-Min-To-Multi-Time-Frame-Market: Es wird verwendet, um ein Dataset (Datensatz) vom Typ One-Min-Daily zu Multi-Time-Frame-Market zu konvertieren.",
|
||||
"updated": 1634683080955
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Multi-Time-Frame-Daily: It is used to process data currently available at a Dataset of type Multi-Time-Frame-Daily and produces as output a Dataset of the same type. How the data is going to be transformed is up to the user, since at the UI users can provide code snippets to handle the data transformation at the Data Building Procedure node.",
|
||||
"updated": 1622197436293
|
||||
"updated": 1622197436293,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Multi-Time-Frame-Daily: Sie wird verwendet, um Daten zu verarbeiten, die derzeit in einem Dataset (Datensatz) des Typs Multi-Time-Frame-Daily vorhanden sind, und erzeugt als Ausgabe ein Dataset (Datensatz) desselben Typs. Wie die Daten umgewandelt werden, bleibt dem Benutzer überlassen, da er auf der Benutzeroberfläche Code-snippets (Code-Schnippsel) für die Datenumwandlung an der Node Data Building Procedure bereitstellen kann.",
|
||||
"updated": 1634683354237
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Multi-Time-Frame-Market: It is used to process data currently available at a Dataset of type Multi-Time-Frame-Market and produces as output a Dataset of the same type. How the data is going to be transformed is up to the user, since at the UI users can provide code snippets to handle the data transformation at the Data Building Procedure node.",
|
||||
"updated": 1622197449190
|
||||
"updated": 1622197449190,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Multi-Time-Frame-Market: Es wird verwendet, um Daten zu verarbeiten, die derzeit in einem Dataset (Datensatz) des Typs Multi-Time-Frame-Market vorhanden sind, und erzeugt als Ausgabe ein Dataset (Datensatz) desselben Typs. Wie die Daten umgewandelt werden, bleibt dem Benutzer überlassen, da er auf der UI (Benutzeroberfläche) Code-snippets (Code-Schnipsel) für die Datenumwandlung an der Node Data Building Procedure bereitstellen kann.",
|
||||
"updated": 1634683338887
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Subtitle",
|
||||
"text": "How to Use an Indicator Framework",
|
||||
"updated": 1622212547671
|
||||
"updated": 1622212547671,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wie man ein Indicator Framework benutzt:",
|
||||
"updated": 1634683417986
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "In order to use a framework at your Indicator Bot, all you need to do is specify the framework name at the Process Definition under the framework property.",
|
||||
"updated": 1622212711775
|
||||
"updated": 1622212711775,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Um ein Framework in Ihrem Indicator Bot zu verwenden, müssen Sie lediglich den Namen des Frameworks in der Process Definition (Prozessdefinition) unter der Eigenschaft Framework angeben.",
|
||||
"updated": 1634683522971
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "In this example, the process will use the From-One-Min-To-Multi-Time-Frame-Daily framework.",
|
||||
"updated": 1622197494708
|
||||
"updated": 1622197494708,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "In diesem Beispiel wird der Prozess das \"From-One-Min-To-Multi-Time-Frame-Daily\" Framework verwenden:",
|
||||
"updated": 1634683598320
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
@@ -160,7 +363,14 @@
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Here is an example using the Multi-Time-Frame-Market framework.",
|
||||
"updated": 1622212639925
|
||||
"updated": 1622212639925,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Hier ist ein Beispiel welches das Multi-Time-Frame-Market Framework verwendet:",
|
||||
"updated": 1634683708431
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
|
||||
+216
-27
@@ -4,87 +4,227 @@
|
||||
"type": "Data Mining - Data Mine Hierarchy",
|
||||
"definition": {
|
||||
"text": "Data mines enable the processing of data by consuming datasets others have produced, performing calculations, and outputting a new value-added data product that others may consume. In other words, Data Mines are user created packages of definitions. These definitions usually include Sensor Bot, Indicator Bot and Plotter definitions. The Data Mines shipped with Superalgos are packages contributed by users of the software.",
|
||||
"updated": 1622238150464
|
||||
"updated": 1622238150464,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Data Mines ermöglichen die Verarbeitung von Daten, indem sie von anderen erstellte Datensätze nutzen, Berechnungen durchführen und ein neues Datenprodukt mit Mehrwert erzeugen, das von anderen genutzt werden kann. Mit anderen Worten: Data Mines sind vom Benutzer erstellte Definitionspakete. Diese Definitionen umfassen in der Regel Sensor Bot , Indicator Bot und Plotter Definitionen. Die mit Superalgos ausgelieferten Data Mines sind Pakete, die von den Benutzern der Software beigetragen wurden.",
|
||||
"updated": 1634739156353
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Superalgos puts a powerful data processing and visualization system into your hands. Use it to the fullest and you will see your intelligence increase by orders of magnitude.",
|
||||
"updated": 1622235471834
|
||||
"updated": 1622235471834,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos gibt Ihnen ein leistungsstarkes Datenverarbeitungs- und Visualisierungssystem an die Hand. Nutzen Sie es in vollem Umfang und Sie werden sehen, dass Ihre Fähigkeiten schnell zunehmen. ",
|
||||
"updated": 1634747145524
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Anyone may access raw trades and order book data from exchanges. Anyone may access information in the form of standard indicators and technical studies."
|
||||
"text": "Anyone may access raw trades and order book data from exchanges. Anyone may access information in the form of standard indicators and technical studies.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Jeder kann auf die Rohdaten der exchanges und Auftragsbuchdaten zugreifen. Jeder kann auf Informationen in Form von Standardindikatoren und technical studies zugreifen.",
|
||||
"updated": 1634747953355
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Callout",
|
||||
"text": "However, Superalgos allows you to perform any sort of processing over existing information across the whole span of the market, store the results into new datasets, and make them available to trading strategies. Moreover, it allows you to produce elaborate graphical representations of data, which is instantly browsable over the charts."
|
||||
"text": "However, Superalgos allows you to perform any sort of processing over existing information across the whole span of the market, store the results into new datasets, and make them available to trading strategies. Moreover, it allows you to produce elaborate graphical representations of data, which is instantly browsable over the charts.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Mit Superalgos können Sie jedoch jede Art von Verarbeitung vorhandener Informationen über die gesamte Marktspanne hinweg durchführen, die Ergebnisse in neuen Datasets (Datensätzen) speichern und sie für Handelsstrategien verfügbar machen. Darüber hinaus können Sie mit Superalgos aufwendige grafische Darstellungen von Daten erstellen, die sofort über die Charts abrufbar sind.",
|
||||
"updated": 1634748282622
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Data mines’ functionality is highly flexible and works under the same paradigm used for building strategies. They provide a visual interface and a framework that leads you through the process of creating new bots, with minimal coding skills required."
|
||||
"text": "Data mines’ functionality is highly flexible and works under the same paradigm used for building strategies. They provide a visual interface and a framework that leads you through the process of creating new bots, with minimal coding skills required.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Funktionalität von Data Mines ist äußerst flexibel und funktioniert nach demselben Paradigma wie die Erstellung von Strategien. Sie bieten eine visuelle Schnittstelle und ein Framework, welches Sie durch den Prozess der Erstellung neuer Bots führt, wobei nur minimale Programmierkenntnisse erforderlich sind.",
|
||||
"updated": 1634748682456
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The vast majority of the complexity of processing data is handled internally by the bots, and you don’t need to deal with it or even understand it. The system isolates complexity and only exposes you to the crucial elements that impact what you wish to accomplish."
|
||||
"text": "The vast majority of the complexity of processing data is handled internally by the bots, and you don’t need to deal with it or even understand it. The system isolates complexity and only exposes you to the crucial elements that impact what you wish to accomplish.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der überwiegende Teil der Komplexität der Datenverarbeitung wird intern von den Bots bewältigt, und Sie müssen sich nicht damit befassen oder sie gar verstehen. Das System isoliert die Komplexität und macht Sie nur mit den entscheidenden Elementen vertraut, die sich auf das auswirken, was Sie erreichen wollen.",
|
||||
"updated": 1634749032287
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "This section of the documentation provides you with the technical understanding of how data is handled by the system. The core of the functionality this section unveils covers—in essence—the following points:"
|
||||
"text": "This section of the documentation provides you with the technical understanding of how data is handled by the system. The core of the functionality this section unveils covers—in essence—the following points:",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Dieser Abschnitt der Dokumentation vermittelt Ihnen das technische Verständnis dafür, wie das System mit Daten umgeht. Der Kern der in diesem Abschnitt vorgestellten Funktionen umfasst im Wesentlichen die folgenden Punkte:",
|
||||
"updated": 1634752754415
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The capacity to define any number of calculation processes that may feed on each other’s outputs, resulting in a wealth of information that may be consumed by trading strategies."
|
||||
"text": "The capacity to define any number of calculation processes that may feed on each other’s outputs, resulting in a wealth of information that may be consumed by trading strategies.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Fähigkeit, eine beliebige Anzahl von Berechnungsprozessen zu definieren, deren Ergebnisse sich gegenseitig füttern können (Das Ergebniss eines Prozess kann in einen anderen Prozess übergehen), was zu einer Fülle von Informationen führt, die von Handelsstrategien genutzt werden können.",
|
||||
"updated": 1634752519271
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The properties and characteristics of datasets resulting from the execution of such processes—how and where they are stored, in what format, how they are consumed internally, and potentially, by other systems."
|
||||
"text": "The properties and characteristics of datasets resulting from the execution of such processes—how and where they are stored, in what format, how they are consumed internally, and potentially, by other systems.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Eigenschaften und Merkmale von Datensätzen, die sich aus der Ausführung solcher Prozesse ergeben, wie und wo sie gespeichert werden, in welchem Format, wie sie intern und möglicherweise von anderen Systemen genutzt werden.",
|
||||
"updated": 1634753039133
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The capacity to visualize the data over the charts and browse it with all the features built in to the charting system.",
|
||||
"updated": 1622235587518
|
||||
"updated": 1622235587518,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Fähigkeit, die Daten über die Charts/Diagramme zu visualisieren und sie mit allen in das Diagrammsystem eingebauten Funktionen zu durchsuchen.",
|
||||
"updated": 1634753888946
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "How Bots Use Data Mines"
|
||||
"text": "How Bots Use Data Mines",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wie Bots Data-Mines nutzen:",
|
||||
"updated": 1634754786568
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "It is important to undestand that a Data Mine is a package of definitions. When users run a Bot, they do it inside a Task. This task needs to know how to run the bot. In order to find this out, the bot within the task must have a reference to a Process Definition exisiting at a Data Mine. When the bot is launched inside the task, at that moment, it receives all the information regarding the task that is being used to launch the bot, while at the same time it also receives the information regarding the Bot's definition from the Data Mine."
|
||||
"text": "It is important to undestand that a Data Mine is a package of definitions. When users run a Bot, they do it inside a Task. This task needs to know how to run the bot. In order to find this out, the bot within the task must have a reference to a Process Definition exisiting at a Data Mine. When the bot is launched inside the task, at that moment, it receives all the information regarding the task that is being used to launch the bot, while at the same time it also receives the information regarding the Bot's definition from the Data Mine.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es ist wichtig zu verstehen, dass eine Data Mine ein Paket von Definitionen ist. Wenn Benutzer einen Bot ausführen, tun sie dies innerhalb einer Task. Diese Task muss wissen, wie der Bot ausgeführt werden soll. Um dies herauszufinden, muss der Bot innerhalb der Task einen Verweis auf eine Process Definition (Prozessdefinition) haben, die in einer Data Mine existiert. Wenn der Bot innerhalb der Task gestartet wird, erhält er in diesem Moment alle Informationen über die Task, die zum Starten des Bots verwendet wird, während er gleichzeitig auch die Informationen über die Definition des Bots von der Data Mine erhält.",
|
||||
"updated": 1634754604505
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Important",
|
||||
"text": "Using both sides of this information (Task data and Bot definition) the Bot is able to do it's job.",
|
||||
"updated": 1622238315541
|
||||
"updated": 1622238315541,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Mit Hilfe beider Seiten dieser Informationen (Task data (Aufgabendaten) und Bot definition (Bot-Definition)) kann der Bot seine Aufgabe erfüllen.",
|
||||
"updated": 1634754770662
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Who Creates Data Mines?"
|
||||
"text": "Who Creates Data Mines?",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wer erstellt die Data Mines (Datenminen)?",
|
||||
"updated": 1634755408237
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Data Mines are created by power users and contributed to the project (the ones shipping with the software). Users might create Data Mines for their personal use and never share them. However, if they share them, they receive SA Tokens for that, and also for adapting and mantaining them, if necessary, for each new release."
|
||||
"text": "Data Mines are created by power users and contributed to the project (the ones shipping with the software). Users might create Data Mines for their personal use and never share them. However, if they share them, they receive SA Tokens for that, and also for adapting and mantaining them, if necessary, for each new release.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Data Mines werden von Power-Usern erstellt und zum Projekt beigesteuert (die, die mit der Software geliefert werden). Benutzer können Data Mines jedoch auch für ihren persönlichen Gebrauch erstellen und sie niemals mit dem Superalgos Projekt teilen. Wenn sie sie jedoch mit dem Superalgos Projekt teilen, erhalten sie dafür SA-Token und auch für die Anpassung und Pflege der Data-Mines, falls erforderlich erhalten sie SA-Tokens. Ebenfalls für jede neue Version.",
|
||||
"updated": 1634756595052
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Supported Bots"
|
||||
"text": "Supported Bots",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Unterstützte Bots:",
|
||||
"updated": 1634756678784
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "There are three types of bots that can hold their definitions at a Data Mine."
|
||||
"text": "There are three types of bots that can hold their definitions at a Data Mine.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es gibt drei Arten von Bots, die ihre Definitionen in einer Data Mine festhalten können.",
|
||||
"updated": 1634756764876
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Sensor Bots: used to fetch data from some Internet source by coding a specialized algorithm."
|
||||
"text": "Sensor Bots: used to fetch data from some Internet source by coding a specialized algorithm.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sensor Bots: werden zum Abrufen von Daten aus einer Internetquelle,durch das Programmieren eines speziellen Algorithmus genutzt.",
|
||||
"updated": 1634756898798
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "API Data Fetcher Bots: used to fetch data from an Internet API without needing to code."
|
||||
"text": "API Data Fetcher Bots: used to fetch data from an Internet API without needing to code.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "API Data Fetcher Bots: werden zum Abrufen von Daten aus einer Internet-API, ohne dass ein Programm-Code erforderlich ist genutzt.",
|
||||
"updated": 1634757022813
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Indicator Bots: used to process data."
|
||||
"text": "Indicator Bots: used to process data.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indicator Bots: werden zur Verarbeitung von Daten verwendet.",
|
||||
"updated": 1634757050012
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
@@ -146,33 +286,82 @@
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Interdependency of Data Mines"
|
||||
"text": "Interdependency of Data Mines",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zusammenhänge von unterschiedlichen Data Mines:",
|
||||
"updated": 1634757414154
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Data Mines might depend on other Data Mines. What this means is the bots within a Data Mine may depend on bots belonging to other Data Mines. Further on in this Topic, you will learn more about how a bot can depend on other bots in detail. In a nutshell, they can depend in 3 ways. They can have a:"
|
||||
"text": "Data Mines might depend on other Data Mines. What this means is the bots within a Data Mine may depend on bots belonging to other Data Mines. Further on in this Topic, you will learn more about how a bot can depend on other bots in detail. In a nutshell, they can depend in 3 ways. They can have a:",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Data Mines können von anderen Data Mines abhängen. Das bedeutet, dass die Bots in einer Data Mine von Bots in anderen Data Mines abhängen können. Im weiteren Verlauf dieses Themas werden Sie mehr darüber erfahren, wie ein Bot im Detail von anderen Bots abhängen kann. Kurz gesagt können sie auf 3 Arten abhängig sein:",
|
||||
"updated": 1634757580850
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Data Dependency: This means that a Bot uses as an input the data produced by another bot."
|
||||
"text": "Data Dependency: This means that a Bot uses as an input the data produced by another bot.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Data Dependency (Daten-Abhängigkeit): Dies bedeutet, dass ein Bot die von einem anderen Bot produzierten Daten als Eingabe verwendet.",
|
||||
"updated": 1634757922151
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Status Dependency: This means that a Bot uses the status of another Bot as parameters for it's own processing."
|
||||
"text": "Status Dependency: This means that a Bot uses the status of another Bot as parameters for it's own processing.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Status Dependency (Status-Abhängigkeit): Dies bedeutet, dass ein Bot den Status eines anderen Bots als Parameter für seine eigene Verarbeitung verwendet.",
|
||||
"updated": 1634757876237
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Success",
|
||||
"text": "The most common use case is when a Bot needs the date on which a market starts or ends. This information is automatically fetched from the Status Report of the bot that produces the raw data because it knows which data is the oldest and the newest at all times.",
|
||||
"updated": 1622237821439
|
||||
"updated": 1622237821439,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der häufigste Anwendungsfall ist, wenn ein Bot das Datum benötigt, an dem ein Markt beginnt oder endet. Diese Information wird automatisch aus dem Status Report (Statusbericht) des Bots geholt, der die Rohdaten erzeugt, da er weiß, welche Daten die ältesten und die neuesten sind.",
|
||||
"updated": 1634757753448
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Execution Dependency: This means that a Bot depends on other Bot execution to finish in order for it to start it's own execution."
|
||||
"text": "Execution Dependency: This means that a Bot depends on other Bot execution to finish in order for it to start it's own execution.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Execution Dependency (Ausführungsabhängigkeit): Das bedeutet, dass ein Bot darauf angewiesen ist, dass die Ausführung eines anderen Bots beendet ist, damit er seine eigene Ausführung starten kann.",
|
||||
"updated": 1634757830197
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Important",
|
||||
"text": "When a Data Mine depends on another Data Mine, both need to be present at the Workspace where the Task executing the Bot is located.",
|
||||
"updated": 1622237827110
|
||||
"updated": 1622237827110,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn eine Data Mine von einer anderen Data Mine abhängt, müssen beide in dem Arbeitsbereich vorhanden sein, in dem sich die Task (Aufgabe) befindet, der den Bot ausführt.",
|
||||
"updated": 1634757983421
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+113
-15
@@ -4,51 +4,114 @@
|
||||
"type": "Data Mining - Managing Execution",
|
||||
"definition": {
|
||||
"text": "Bots can execute at their own pace or they can wait for other bots to finish executing before starting.",
|
||||
"updated": 1622214711890
|
||||
"updated": 1622214711890,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Bots können in ihrem eigenen Tempo ausgeführt werden oder sie können warten, bis andere Bots die Ausführung beendet haben, bevor sie beginnen.",
|
||||
"updated": 1634828825458
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Bot Execution Tree",
|
||||
"updated": 1622215214005
|
||||
"updated": 1622215214005,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Bot Execution Tree (Bot Ausführungsbaum):",
|
||||
"updated": 1634828847947
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "A helpful way to think about managing bot execution is to think of the image of a tree. The roots support the trunk which supports the branches. In the same way, Superalgos uses many bots to process data each relying on the output of the last to form a tree. As data is passed through the tree the raw data is processed and reprocessed to build more and more elaborate datasets.",
|
||||
"updated": 1622215593975
|
||||
"updated": 1622215593975,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Eine hilfreiche Art und Weise, über die Verwaltung der Bot-Ausführung nachzudenken, ist das Bild eines Baumes. Die Wurzeln unterstützen den Stamm, der wiederum die Äste stützt. Auf die gleiche Weise verwendet Superalgos viele Bots, um Daten zu verarbeiten, wobei sich jeder auf den Output des letzten stützt, um einen Baum zu bilden. Während die Daten den Baum durchlaufen, werden die Rohdaten verarbeitet und weiterverarbeitet, um immer durchdachtere Datensätze zu erstellen.",
|
||||
"updated": 1634832671242
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Types of Execution Managment"
|
||||
"text": "Types of Execution Managment",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Arten des Execution (Ausführungs)/ Management:",
|
||||
"updated": 1634832926148
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"style": "Subtitle",
|
||||
"text": "There are two types of execution managment:"
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Standalone Bots: These bots are the root of the Bot Execution Tree. They don't depend on any other bot to run but use the configuration of it's Process Definition node to run on a pre-defined schedule (in most cases every one minute).",
|
||||
"updated": 1622215038717
|
||||
"updated": 1622215038717,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Diese Bots sind die Wurzel des Execution Tree (Bot-Ausführungsbaums). Sie sind nicht von anderen Bots abhängig, sondern verwenden die Konfiguration ihrer Process Definition node, um nach einem vordefinierten Zeitplan (in den meisten Fällen jede Minute) zu laufen.",
|
||||
"updated": 1634841023922
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "Usually when a bot produces raw data, it operates as a standalone bot. ",
|
||||
"updated": 1622215509477
|
||||
"updated": 1622215509477,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn ein Bot Rohdaten produziert, arbeitet er normalerweise als eigenständiger Bot.",
|
||||
"updated": 1634841057033
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Execution Dependent Bots: These bots are the branches of the Bot Execution Tree. They need to wait for other Bots to finish their execution in order to start.",
|
||||
"updated": 1622215195801
|
||||
"updated": 1622215195801,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Execution Dependent Bots: Diese Bots sind die Zweige des Bot-Ausführungsbaums. Sie müssen warten, bis andere Bots ihre Ausführung beendet haben, um starten zu können.",
|
||||
"updated": 1634841171154
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Configuring a Standalone Bot",
|
||||
"updated": 1622215700788
|
||||
"updated": 1622215700788,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Einen eigenständigen Bot konfigurieren:",
|
||||
"updated": 1634841196929
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "This is an example of how to configure a bot to execute as a Standalone Bot. Within the Process Definition of a Bot, the normalWaitTime property has a non zero value, in this case 60 seconds.",
|
||||
"updated": 1622215895631
|
||||
"updated": 1622215895631,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Hier ein Beispiel für die Konfiguration eines Bots zur Ausführung als eigenständiger Bot In der Process Definition eines Bots hat die Eigenschaft normalWaitTime einen Wert ungleich Null, in diesem Fall 60 Sekunden.",
|
||||
"updated": 1634841274219
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
@@ -58,22 +121,50 @@
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Configuring an Execution Dependent Bot",
|
||||
"updated": 1622215826932
|
||||
"updated": 1622215826932,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Konfigurieren eines Execution Dependent Bot (ausführungsabhängigen Bots):",
|
||||
"updated": 1634841312416
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "In order to configure a bot to execute as an Execution Dependent Bot two things need to be in place. ",
|
||||
"updated": 1622216289412
|
||||
"updated": 1622216289412,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Um einen Bot so zu konfigurieren, dass er als Execution Dependent Bot (ausführungsabhängiger Bot) ausgeführt wird, müssen zwei Dinge vorhanden sein:",
|
||||
"updated": 1634841400498
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "First, the bot's definition will need to have an Execution Started Event defined. After this, the Execution Started Event will need to have a reference to the Execution Finished Event of the Bot on which it is waiting.",
|
||||
"updated": 1622216544766
|
||||
"updated": 1622216544766,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zunächst muss in der Definition des Bots ein Ereignis Execution Started Event definiert werden. Danach muss das Ereignis \"Execution Started Event\" einen Verweis auf das Ereignis \"Execution Finished Event\" des Bots enthalten, auf das es wartet.",
|
||||
"updated": 1634843860022
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Second, the Bot's Process Definition will need a zero in the normalWaitTime property. This will force the Bot to immediately run the next loop, but since there is an Execution Started Event defined, that will make it wait until the referenced Bot finishes.",
|
||||
"updated": 1622216345546
|
||||
"updated": 1622216345546,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zweitens benötigt die Prozessdefinition des Bots eine Null in der Eigenschaft normalWaitTime. Dadurch wird der Bot gezwungen, sofort den nächsten loop auszuführen. Da jedoch ein Ereignis Execution Started Event definiert ist, wird er warten, bis der referenzierte Bot fertig ist.",
|
||||
"updated": 1634843953677
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
@@ -83,7 +174,14 @@
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "From a deployment point of view, the dependant bots can be physically located on the same machine, or on multiple different machines. Superalgos handles syncronization across multiples machines.",
|
||||
"updated": 1622216626010
|
||||
"updated": 1622216626010,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Aus Sicht der Bereitstellung können sich die abhängigen Bots physisch auf demselben Rechner oder auf mehreren verschiedenen Rechnern befinden. Superalgos kümmert sich um die Syncronisierung über mehrere Maschinen hinweg.",
|
||||
"updated": 1634844032286
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+72
-9
@@ -4,47 +4,110 @@
|
||||
"type": "Data Mining - Data Dependencies",
|
||||
"definition": {
|
||||
"text": "Indicator Bots have data dependencies. This means that they receive their input as Datasets created by other Bots.",
|
||||
"updated": 1622216765574
|
||||
"updated": 1622216765574,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indicator-Bots haben Datenabhängigkeiten. Das bedeutet, dass sie ihren Input als Datasets (Datensätze) erhalten, die von anderen Bots erstellt wurden.",
|
||||
"updated": 1634844427000
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Data Dependency Tree",
|
||||
"updated": 1622219215680
|
||||
"updated": 1622219215680,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Data Dependency Tree (Datenabhängigkeitsbaum):",
|
||||
"updated": 1634845933837
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "You can think about data dependencies as a type of relationship between bots. Bots producing raw data (Sensor Bot and API Data Fetcher Bot) don't have them, since their job is to extract data from an external source. At the same time, they are also the root of the data dependancy tree of relationships. This tree is very similar to the execution tree but instead of describing how bots run, it describes how bots send and receive Data Products.",
|
||||
"updated": 1622217397887
|
||||
"updated": 1622217397887,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie können Datenabhängigkeiten als eine Art von Beziehung zwischen Bots betrachten. Bots, die Rohdaten produzieren (Sensor Bot und API Data Fetcher Bot), haben diese nicht, da ihre Aufgabe darin besteht, Daten aus einer externen Quelle zu extrahieren. Gleichzeitig sind sie aber auch die Wurzel des Beziehungsbaums der Datenabhängigkeit. Dieser Baum ist dem Ausführungsbaum sehr ähnlich, aber anstatt zu beschreiben, wie Bots ausgeführt werden, beschreibt er, wie Bots Datenprodukte senden und empfangen.",
|
||||
"updated": 1634846209261
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Defining Data Dependencies",
|
||||
"updated": 1622217419549
|
||||
"updated": 1622217419549,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Definieren von Data Dependencies (Datenabhängigkeiten):",
|
||||
"updated": 1634846239206
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The definition of data dependencias is held at the Process Definition level. Each process might have its own set of data dependencies. This means that a single bot may have many varying dependencies depending on the number of Process Definitions it contains."
|
||||
"text": "The definition of data dependencias is held at the Process Definition level. Each process might have its own set of data dependencies. This means that a single bot may have many varying dependencies depending on the number of Process Definitions it contains.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Definition der Datenabhängigkeiten erfolgt auf der Ebene der Process Definition. Jeder Prozess kann seinen eigenen Satz von Datenabhängigkeiten (Data Dependencies) haben. Das bedeutet, dass ein einzelner Bot viele unterschiedliche Abhängigkeiten haben kann, je nach der Anzahl der Prozessdefinitionen, die er enthält.",
|
||||
"updated": 1634846341180
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "In addtion to this, it is possible for a single Bot's process to have more than one Data Dependency (from the same Bot or from different Bots). That is particulary useful to aggregate data from many datasets into another one. The dependent datasets could belong to Bots at the same Data Mine or at bots at other Data Mines.",
|
||||
"updated": 1622217595798
|
||||
"updated": 1622217595798,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Darüber hinaus ist es möglich, dass ein einzelner Bot-Prozess mehr als eine Datenabhängigkeit(Data Dependencies) hat (vom selben Bot oder von verschiedenen Bots). Das ist besonders nützlich, um Daten aus vielen Datensätzen in einem anderen zu aggregieren. Die abhängigen Datensätze können zu Bots in derselben Data Mine oder zu Bots in anderen Data Mines gehören.",
|
||||
"updated": 1634846512050
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The first declared dependency is called the Main Dependency and has a special meaning. It is used by the process of the Bot to iterate. What this means is that the process will loop over the Dataset of the Main Dependency to produce the output Dataset. All the other data dependencies will be used each iteration to extract additional data.",
|
||||
"updated": 1622218002546
|
||||
"updated": 1622218002546,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die erste deklarierte Abhängigkeit wird als Main Dependency bezeichnet und hat eine besondere Bedeutung. Sie wird vom Prozess des Bot verwendet, um zu iterieren. Das bedeutet, dass der Prozess eine Schleife über den Datensatz der Main Dependency durchläuft, um den Ausgabedatensatz zu erzeugen. Alle anderen Datenabhängigkeiten werden bei jeder Iteration verwendet, um zusätzliche Daten zu extrahieren.",
|
||||
"updated": 1634846641215
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Success",
|
||||
"text": "As with bot execution, the dependant datasets can be physically located on the same machine, or at multiple different machines. However, when a Bot has a Data Dependency of a dataset produced by a Bot defined at a different Data Mine, both Data Mines must be present at the Workspace where the Bot is going to be launched.",
|
||||
"updated": 1622218098435
|
||||
"updated": 1622218098435,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wie bei der Bot-Ausführung können sich die abhängigen Datensätze physisch auf demselben Rechner oder auf mehreren verschiedenen Rechnern befinden. Wenn ein Bot jedoch eine Datenabhängigkeit von einem Datensatz hat, der von einem Bot erzeugt wurde, der in einer anderen Data Mine definiert ist, müssen beide Data Mines in dem Arbeitsbereich vorhanden sein, in dem der Bot gestartet werden soll.",
|
||||
"updated": 1634846723896
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "The Candles Data Mine is the most referenced Data Mine because it defines the Candles-Volumes Indicator Bot, that produces the most used information for trading systems: Candles.",
|
||||
"updated": 1622218178970
|
||||
"updated": 1622218178970,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Candles Data Mine ist die am häufigsten referenzierte Data Mine, da sie den Candles-Volumes Indicator Bot definiert, der die am häufigsten verwendeten Informationen für Handelssysteme liefert: Candles (Kerzen).",
|
||||
"updated": 1634847014711
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+56
-7
@@ -4,32 +4,74 @@
|
||||
"type": "Data Mining - Status Reports",
|
||||
"definition": {
|
||||
"text": "Status Reports are files produced by each Bot's processes with key information the Bot needs to save in order to remember the next time it is run.",
|
||||
"updated": 1622218351726
|
||||
"updated": 1622218351726,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Statusberichte sind Dateien, die von den einzelnen Bot-Prozessen erstellt werden und wichtige Informationen enthalten, die der Bot speichern muss, um sich bei der nächsten Ausführung an sie zu erinnern.",
|
||||
"updated": 1634847240243
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "The Task Server Main Loop",
|
||||
"updated": 1622218578406
|
||||
"updated": 1622218578406,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "The Task Server Main Loop (Die Hauptschleife des Aufgabenservers):",
|
||||
"updated": 1634847263150
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Most Bots in Superalgos are run by the Task Server and implement a Main Loop. At each loop execution, bots do their job and at the end they go to sleep. ",
|
||||
"updated": 1622218637972
|
||||
"updated": 1622218637972,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die meisten Bots in Superalgos werden vom Task Server ausgeführt und implementieren eine Hauptschleife. Bei jeder Schleifenausführung erledigen die Bots ihre Aufgabe und gehen am Ende in eine art \"Schlaf\" (wie ein Ruhezustand Modus) bis die Schleife wieder ausgeführt wird.",
|
||||
"updated": 1634847458538
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "How much time they sleep and other details are configured at the Bot's Process Definition."
|
||||
"text": "How much time they sleep and other details are configured at the Bot's Process Definition.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wie lange sie \"schlafen\" und andere Details werden in der Prozessdefinition des Bots konfiguriert.",
|
||||
"updated": 1634847359588
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "Status Report Mechanics",
|
||||
"updated": 1622218611081
|
||||
"updated": 1622218611081,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Status Report Mechanics (Statusbericht Mechaniken):",
|
||||
"updated": 1634847419703
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
"text": "Before a bot goes to sleep, computer memory is flushed of all information related to the Bot. This is important to free up hardware resources for other bots running on the same machine. However, there is some information Bots need to remember between each execution of the Main Loop, and between executions of the Task itself. That info is stored in a JSON / text file called the Status Report. The name Status was used since the information stored is often the status of the Bot's process. Here is an example of a simple Status Report file:",
|
||||
"updated": 1622218847283
|
||||
"updated": 1622218847283,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Bevor ein Bot in den Ruhezustand geht, werden alle mit dem Bot verbundenen Informationen aus dem Computerspeicher entfernt. Dies ist wichtig, um Hardware-Ressourcen für andere Bots freizugeben, die auf demselben Computer laufen. Es gibt jedoch einige Informationen, die sich Bots zwischen den einzelnen Ausführungen der Hauptschleife selber und zwischen den Ausführungen des Tasks selbst merken müssen.Diese Informationen werden in einer JSON-/Textdatei namens Status Report gespeichert. Der Name \"Status\" wurde gewählt, da die gespeicherten Informationen oft den Status des Bot-Prozesses darstellen. Hier ist ein Beispiel für eine einfache Status Report Datei:",
|
||||
"updated": 1634847824025
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Json",
|
||||
@@ -39,7 +81,14 @@
|
||||
{
|
||||
"style": "Note",
|
||||
"text": "Status Report files might also include a data structure called Inter Execution Memory. Status information is standard for all types of bots. Inter Execution Memory, on the other hand, depends on each Bot's type and what is actually being processed.",
|
||||
"updated": 1622218782345
|
||||
"updated": 1622218782345,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Status Report Dateien können auch eine Datenstruktur namens Inter Execution Memory enthalten. Statusinformationen sind für alle Arten von Bots Standard. Der Inter Execution Memory (Ausführungsspeicher) hingegen hängt vom Typ des jeweiligen Bots ab und davon, was tatsächlich verarbeitet wird.",
|
||||
"updated": 1634847925406
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Text",
|
||||
|
||||
+15
-2
@@ -9,7 +9,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Este tutorial complementa la información entregada en el Welcome to Superalgos Tutorial, centrándose en el Nodes Menu, Backups, Clones y Shares, Plugins, Workspaces, References, y más.",
|
||||
"updated": 1628897004689
|
||||
"updated": 1628897004689,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Dieses Tutorial ergänzt die Informationen aus dem Welcome to Superalgos Tutorial und konzentriert sich auf Nodes Menu, Backups, Clones und Shares, Plugins, Workspaces, References, und mehr.",
|
||||
"updated": 1634585384331
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -17,7 +23,14 @@
|
||||
{
|
||||
"style": "Title",
|
||||
"text": "About This Tutorial",
|
||||
"updated": 1617111489986
|
||||
"updated": 1617111489986,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Über dieses Tutorial",
|
||||
"updated": 1634585391510
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
|
||||
+42
-6
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Ahora que comprendes las referencias, podemos profundizar en Backups,tal vez incluso discutir las diferencias con Clones!",
|
||||
"updated": 1626568459683
|
||||
"updated": 1626568459683,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Jetzt, da Sie die Referenzen verstanden haben, können wir uns näher mit Backups befassen und vielleicht sogar die Unterschiede zu Clones diskutieren!",
|
||||
"updated": 1634585586598
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Tienes más que leer! ¡Por favor, lee esta página detenidamente y deja que la información se asimile!",
|
||||
"updated": 1626569135266
|
||||
"updated": 1626569135266,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie müssen noch etwas lesen! Bitte lesen Sie diese Seite sorgfältig und lassen Sie die Informationen auf sich wirken!",
|
||||
"updated": 1634585594377
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "En resumen:",
|
||||
"updated": 1626613851965
|
||||
"updated": 1626613851965,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zusammengefasst:",
|
||||
"updated": 1634585604403
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Outgoing references: Siempre se mantienen intactos.",
|
||||
"updated": 1626569183871
|
||||
"updated": 1626569183871,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ausgehende Referenzen: Sie werden immer beibehalten.",
|
||||
"updated": 1634585629017
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -92,7 +116,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Incoming references: Se conservan solo cuando se elimina la estructura original antes de restaurar la copia de seguridad.",
|
||||
"updated": 1626613813084
|
||||
"updated": 1626613813084,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Eingehende Referenzen: Sie werden nur beibehalten, wenn die Originalstruktur vor der Wiederherstellung der Sicherung gelöscht wird.",
|
||||
"updated": 1634585637023
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -110,7 +140,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Internal references: Permanecen internos, solo cuando la estructura original se elimina primero.",
|
||||
"updated": 1626613836362
|
||||
"updated": 1626613836362,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Interne Referenzen: Sie bleiben nur dann intern, wenn die ursprüngliche Struktur zuerst gelöscht wird.",
|
||||
"updated": 1634585642707
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Repasemos los mismos ejemplos sobre los que acabas de leer para que te los aprendas de memoria!",
|
||||
"updated": 1626613958881
|
||||
"updated": 1626613958881,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Gehen wir noch einmal die Beispiele durch, die Sie gerade gelesen haben, damit Sie das auswendig lernen!",
|
||||
"updated": 1634585727295
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Realiza una copia de seguridad del Lightning Strike Task y restaurarlo sin eliminar la tarea original. Luego repite la operación pero eliminando la tarea original antes de restaurar la copia de seguridad.",
|
||||
"updated": 1626614204066
|
||||
"updated": 1626614204066,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Erstellen Sie eine Sicherungskopie des Lightning Strike Tasks und stellen Sie diese wieder her, ohne den ursprünglichen Task zu löschen. Dann wiederholen Sie den Vorgang, löschen aber den ursprünglichen Task, bevor Sie die Sicherung wiederherstellen.",
|
||||
"updated": 1634585740393
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Verifica que, en ambos casos, las referencias salientes originadas en el Trading System Reference y el nodo Trading Engine Reference se conservan.",
|
||||
"updated": 1626614637489
|
||||
"updated": 1626614637489,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Vergewissern Sie sich, dass in beiden Fällen die ausgehenden Verweise, die von den Knoten Trading System Reference und Trading Engine Reference ausgehen, erhalten bleiben.",
|
||||
"updated": 1634585747278
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Recuerda que las referencias salientes siempre se conservan!",
|
||||
"updated": 1626614674572
|
||||
"updated": 1626614674572,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Denken Sie daran, dass ausgehende Referenzen immer erhalten bleiben!",
|
||||
"updated": 1634585756386
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Te dije que iba a insistir en este tema! ¡Probemos el segundo ejemplo!",
|
||||
"updated": 1626614763096
|
||||
"updated": 1626614763096,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ich habe Ihnen gesagt, dass ich dieses Thema mit dem Hammer bearbeiten werde! Lassen Sie uns das zweite Beispiel ausprobieren!",
|
||||
"updated": 1634585921922
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Realiza una copia de seguridad del sistema Lightning Strike trading! Restaura la copia de seguridad sin eliminar el original. Luego, repite la operación de restauración, pero primero elimine el sistema trading original.",
|
||||
"updated": 1626614976596
|
||||
"updated": 1626614976596,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Machen Sie ein Backup des Lightning Strike Handelssystems! Stellen Sie das Backup wieder her, ohne das Original zu löschen. Wiederholen Sie dann den Wiederherstellungsvorgang, aber löschen Sie zuerst das ursprüngliche Handelssystem!",
|
||||
"updated": 1634585943896
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -55,7 +67,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Verifica cómo se conservan las referencias entrantes solo en el segundo caso!",
|
||||
"updated": 1626615039104
|
||||
"updated": 1626615039104,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Überprüfen Sie, wie die eingehenden Referenzen nur im zweiten Fall erhalten bleiben!",
|
||||
"updated": 1634585949205
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -73,7 +91,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Recuerde que, para conservar las referencias entrantes, debe eliminar la estructura original de los nodos antes de restaurar la copia de seguridad.",
|
||||
"updated": 1626615070797
|
||||
"updated": 1626615070797,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Damit die eingehenden Referenzen erhalten bleiben, müssen Sie die ursprüngliche Struktur der Knoten löschen, bevor Sie die Sicherung wiederherstellen!",
|
||||
"updated": 1634585956756
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Probemos el tercer ejemplo! ¡Observa las referencias que fluyen desde los vértices del polígono hasta los puntos debajo del nodo Chart Points!",
|
||||
"updated": 1626615204304
|
||||
"updated": 1626615204304,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Versuchen wir es mit dem dritten Beispiel! Beachten Sie die Verweise, die von Polygonscheiteln zu Punkten unter dem Knoten Chart Points fließen!",
|
||||
"updated": 1634586079127
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Realiza un backup del nodo Shapes y restauralo en el lateral sin borrar el original. Luego repite, pero eliminando el original antes de restaurar el backup.",
|
||||
"updated": 1626617114505
|
||||
"updated": 1626617114505,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Erstellen Sie eine Sicherungskopie des Knotens Shapes und stellen Sie diese wieder her, ohne das Original zu löschen. Wiederholen Sie den Vorgang, aber löschen Sie das Original, bevor Sie die Sicherung wiederherstellen!",
|
||||
"updated": 1634586087146
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -55,7 +67,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡En el primer caso, las referencias apuntan a que los puntos originales se convierten en referencias externas! Por el contrario, en el segundo caso, ¡las referencias permanecen internas!",
|
||||
"updated": 1626615362499
|
||||
"updated": 1626615362499,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Beachten Sie, dass im ersten Fall die Verweise auf die ursprünglichen Punkte zu externen Verweisen werden! Im zweiten Fall hingegen bleiben die Referenzen intern!",
|
||||
"updated": 1634586093378
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -73,7 +91,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Las referencias permanecen internas solo cuando primero eliminas la estructura original!",
|
||||
"updated": 1626615411251
|
||||
"updated": 1626615411251,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Denken Sie daran, dass Referenzen nur dann intern bleiben, wenn Sie die Originalstruktur zuerst löschen!",
|
||||
"updated": 1634586099423
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+15
@@ -21,6 +21,11 @@
|
||||
"text": "¡Espero que hayas comprendido las complejidades de las copias de seguridad y cómo se ven afectadas las referencias en cada caso de restauración en particular!",
|
||||
"updated": 1626617460637,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ich hoffe, Sie haben die Feinheiten von Backups verstanden und wissen, wie Referenzen in jedem einzelnen Wiederherstellungsfall betroffen sind!",
|
||||
"updated": 1634586159314
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "No es necesario que memorices los casos individuales. En cambio, si comprendes el mecanismo subyacente que involucra referencias, ¡entonces puede deducir el comportamiento en cada caso!",
|
||||
"updated": 1626617450873,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie müssen die einzelnen Fälle nicht auswendig lernen. Wenn Sie stattdessen den zugrundeliegenden Mechanismus mit den Referenzen verstehen, können Sie das Verhalten in jedem Fall ableiten!",
|
||||
"updated": 1634586166198
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "¡Recuerda que cada nodo tiene un ID específico! Cuando se establece una referencia, ambos nodos involucrados tienen un ID único. Las referencias salientes no dependen del ID del nodo, ¡pero las referencias entrantes sí! Si el nodo respaldado se puede restaurar con el mismo ID, las referencias entrantes persistirán; de lo contrario, cambiarán o se perderán.",
|
||||
"updated": 1626617498840,
|
||||
"style": "Note"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Denken Sie daran, dass jeder Knoten eine bestimmte ID hat! Wenn ein Verweis hergestellt wird, haben beide beteiligten Knoten eine eindeutige ID. Ausgehende Referenzen hängen nicht von der ID des Knotens ab, eingehende jedoch schon! Wenn der gesicherte Knoten mit der gleichen ID wiederhergestellt werden kann, bleiben die eingehenden Verweise bestehen; andernfalls ändern sie sich oder gehen verloren!",
|
||||
"updated": 1634586177224
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+42
-6
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Clones difieren de las copias de seguridad en que la función está diseñada para replicar estructuras de datos para que las copias se parezcan al original.",
|
||||
"updated": 1626617648374
|
||||
"updated": 1626617648374,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Clones unterscheiden sich von Backups insofern, als dass die Funktion darauf ausgelegt ist, Datenstrukturen zu replizieren, so dass die Kopien dem Original ähneln.",
|
||||
"updated": 1634586258905
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Lee esta página con atención!",
|
||||
"updated": 1626617702879
|
||||
"updated": 1626617702879,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Lesen Sie diese Seite aufmerksam!",
|
||||
"updated": 1634586264863
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "En resumen:",
|
||||
"updated": 1626617716280
|
||||
"updated": 1626617716280,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zusammengefasst:",
|
||||
"updated": 1634586271229
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Clones se comportan de la misma manera tanto si el original está presente en el momento de la restauración como si no.",
|
||||
"updated": 1626617738901
|
||||
"updated": 1626617738901,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Clones verhalten sich gleich, ob das Original bei der Wiederherstellung vorhanden ist oder nicht.",
|
||||
"updated": 1634586276607
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -91,7 +115,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Las referencias entrantes siempre se descartan.",
|
||||
"updated": 1626617756338
|
||||
"updated": 1626617756338,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Eingehende Referenzen werden immer verworfen.",
|
||||
"updated": 1634586293349
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -109,7 +139,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Siéntate libre de tomarte el tiempo para probar las característica de los Clones por tu cuenta! ¡Pasaremos a otros temas sin más preámbulos!",
|
||||
"updated": 1626617964519
|
||||
"updated": 1626617964519,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Nehmen Sie sich die Zeit, die Funktion Clones selbst zu testen! Wir gehen ohne weiteres zu anderen Themen über!",
|
||||
"updated": 1634586287700
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Shares son como Backups, ¡pero al archivo resultante se le quita la información personal confidencial!",
|
||||
"updated": 1626618089488
|
||||
"updated": 1626618089488,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Shares sind wie Backups, aber die resultierende Datei ist frei von sensiblen persönlichen Informationen!",
|
||||
"updated": 1634586443245
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Acostúmbrate a compartir Shares. ¡Esta buena práctica te ayudará a evitar errores peligrosos en el futuro!",
|
||||
"updated": 1626618451384
|
||||
"updated": 1626618451384,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Gewöhnen Sie sich daran, Shares zu teilen! Diese gute Praxis wird Ihnen helfen, in Zukunft gefährliche Fehler zu vermeiden!",
|
||||
"updated": 1634586450108
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -55,7 +67,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Leer la página sobre Shares para más información!",
|
||||
"updated": 1626618230044
|
||||
"updated": 1626618230044,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Lesen Sie die Seite über Shares für weitere Informationen!",
|
||||
"updated": 1634586458598
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -72,7 +90,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Siempre que desees compartir tu trabajo, nunca compartas tus archivos Workspace o Backups. Pueden contener información confidencial como tu Exchange Account Key. En cambio, comparte tus Shares!",
|
||||
"updated": 1626618429538
|
||||
"updated": 1626618429538,
|
||||
"style": "Warning"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wann immer Sie Ihre Arbeit freigeben möchten, geben Sie niemals Ihre Workspace Dateien oder Backups frei. Diese Dateien können sensible Informationen wie Ihren Exchange Account Key enthalten. Geben Sie stattdessen Ihre Shares frei!",
|
||||
"updated": 1634586464169
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+35
-5
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Puede pensar en un espacio de trabajo como en el escenario de un teatro. ¡Es el escenario en el que se desarrollará algo!",
|
||||
"updated": 1626618738205
|
||||
"updated": 1626618738205,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie können sich einen Workspace wie eine Bühne im Theater vorstellen. Er ist der Rahmen, auf dem sich etwas abspielt!",
|
||||
"updated": 1634587175719
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Puede configurar tantos espacios de trabajo como desee, cada uno de ellos para casos de uso específicos. Por ejemplo:",
|
||||
"updated": 1626618800731
|
||||
"updated": 1626618800731,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie können so viele Workspaces einrichten, wie Sie möchten, jeder davon für einen bestimmten Anwendungsfall. Zum Beispiel:",
|
||||
"updated": 1634587186919
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -55,7 +67,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Puede tener un espacio de trabajo para construir un Trading System que necesitarán indicadores específicos de un Data Mine.",
|
||||
"updated": 1626618837507
|
||||
"updated": 1626618837507,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie können einen Workspace einrichten, um ein Trading System aufzubauen, das bestimmte Indikatoren aus einer bestimmten Data Mine benötigt.",
|
||||
"updated": 1634587193298
|
||||
}
|
||||
],
|
||||
"updated": 1622374580811
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Puede tener otra configuración de espacio de trabajo con todos los indicadores disponibles para que puedas estudiar cómo funciona cada uno de ellos.",
|
||||
"updated": 1626618870536
|
||||
"updated": 1626618870536,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie können einen anderen Workspace mit allen verfügbaren Indikatoren einrichten, damit Sie die Funktionsweise jedes einzelnen Indikators studieren können.",
|
||||
"updated": 1634587201243
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -92,7 +116,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Lee esta página y aprende los conceptos básicos sobre cómo manejar los espacios de trabajo...",
|
||||
"updated": 1626618939242
|
||||
"updated": 1626618939242,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Lesen Sie diese Seite, um die Grundlagen über den Umgang mit Workspaces zu erfahren...",
|
||||
"updated": 1634587206424
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+17
-2
@@ -21,14 +21,19 @@
|
||||
"text": "Ve a la aplicación Explorador de archivos y busca las siguientes rutas relativas a la carpeta raíz de Superalgos...",
|
||||
"updated": 1626620466947,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Gehen Sie zu Ihrer Datei-Explorer-Anwendung und suchen Sie nach den folgenden Pfaden relativ zum Stammordner von Superalgos...",
|
||||
"updated": 1634587292897
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
"style": "Json",
|
||||
"text": "\\My-Workspaces\n",
|
||||
"updated": 1615906070844,
|
||||
"text": "\\Platform\\My-Workspaces",
|
||||
"updated": 1634587417482,
|
||||
"translations": [
|
||||
{
|
||||
"language": "IT",
|
||||
@@ -54,6 +59,11 @@
|
||||
"text": "En esta carpeta, encontrarás un archivo llamado Getting Started Tutorials.json. Tel suyo es el espacio de trabajo actual; el que estás usando en este momento. Todo lo que ha estado haciendo últimamente se ha almacenado aquí.",
|
||||
"updated": 1626620522459,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Hier finden Sie die Workspaces, die Sie möglicherweise zuvor gespeichert haben. Wenn der Ordner leer ist oder nicht existiert, bedeutet dies, dass Sie noch keine Workspaces gespeichert haben!",
|
||||
"updated": 1634587301340
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -77,6 +87,11 @@
|
||||
"text": "En esta carpeta, encontrarás Plugin Workspaces conectando con Superalgos. Es posible que desees leer los Documentos del \"Community Workspaces\" para saber de qué se trata cada uno de ellos.",
|
||||
"updated": 1626620829014,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "In diesem Ordner finden Sie die Plugin Workspaces, die mit Superalgos ausgeliefert werden. Vielleicht möchten Sie das Thema \"Community Workspaces\" in den Docs lesen, um zu erfahren, worum es bei den einzelnen Workspaces geht!",
|
||||
"updated": 1634587316991
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
+25
@@ -21,6 +21,11 @@
|
||||
"text": "El espacio de trabajo actual es el User Workspace que estés utilizando en cualquier momento.",
|
||||
"updated": 1626621294273,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Der aktuelle Workspace ist der User Workspace oder der Plugin Workspace, den Sie gerade verwenden.",
|
||||
"updated": 1634587888849
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "Si cierras y reinicias la aplicación, o actualizas el User Interface, el sistema carga el ultimo Workspace usado.",
|
||||
"updated": 1626622914590,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie die Anwendung schließen und neu starten oder die Benutzeroberfläche UI aktualisieren, lädt das System den zuletzt verwendeten Workspace.",
|
||||
"updated": 1634587898657
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "Accede al menú del nodo Workspace, doble clic en la etiqueta \"Getting Started Tutorials\" y cámbialo a \"Basic Education\".",
|
||||
"updated": 1626621401640,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Rufen Sie das Menü des Knotens Workspace auf, doppelklicken Sie auf die Bezeichnung \"Getting Started Tutorials\" und ändern Sie sie in \"Basic Education\".",
|
||||
"updated": 1634587910330
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "Ahora presiona Ctrl + Shift + Alt + Key-S",
|
||||
"updated": 1626621439639,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Drücken Sie nun Ctrl + Shift + Alt + Key-S",
|
||||
"updated": 1634587951733
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -98,6 +118,11 @@
|
||||
"text": "Ve a la carpeta My-Workspaces para verificar que el nuevo archivo está allí. ¡Encuéntralo también en la pestaña de espacios de trabajo!",
|
||||
"updated": 1626622475717,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Gehen Sie zum Ordner My-Workspaces , um zu überprüfen, ob die neue Datei dort vorhanden ist. Sie finden sie auch auf der Registerkarte Workspaces !",
|
||||
"updated": 1634587938906
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "Plugins son estructuras de datos que se envían con el sistema y que puede llamar a cualquier espacio de trabajo utilizando la jerarquía de Plugins.",
|
||||
"updated": 1626622977338,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Plugins sind Datenstrukturen, die mit dem System geliefert werden und die Sie über die Plugins-Hierarchie in jedem Workspace aufrufen können.",
|
||||
"updated": 1634588386781
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "Plugins son estructuras de datos destinadas a ser reutilizadas. Es por eso que se envían como plugins, para que puedas colocarlos en cualquier Workspace.",
|
||||
"updated": 1626620113069,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Plugins sind Datenstrukturen, die wiederverwendet werden sollen. Aus diesem Grund werden sie als Plugins ausgeliefert, so dass Sie sie in jedem Workspace platzieren können.",
|
||||
"updated": 1634588379363
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -59,6 +69,11 @@
|
||||
"text": "¡Amplia el nodo Plugins!",
|
||||
"updated": 1626619242709,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Erweitern Sie den Knoten Plugins!",
|
||||
"updated": 1634588371523
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -78,6 +93,11 @@
|
||||
"text": "Como puede deducirse de la estructura de la jerarquía, existen varios tipos de plugins! Se envían como archivos JSON, ordenados por tipo en la carpeta de plugins. ¡Échale un vistazo!",
|
||||
"updated": 1626619903123,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wie Sie an der Struktur der Hierarchie erkennen können, gibt es mehrere Arten von Plugins! Sie werden als JSON-Dateien ausgeliefert, die nach Typ im Plugins-Ordner sortiert sind. Probieren Sie es aus!",
|
||||
"updated": 1634588393321
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Encuentra el nodo Plugin Trading Systemsy y expandelo! Nota el nodo del archivo Plugin llamado Masters-Lightning-Strike...",
|
||||
"updated": 1626641150426
|
||||
"updated": 1626641150426,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Suchen Sie den Knoten Plugin Trading Systems und erweitern Sie ihn! Beachten Sie den Plugin-Datei-Knoten namens Masters-Lightning-Strike...",
|
||||
"updated": 1634588528149
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Lightning Strike es la demo Trading System con la que has estado jugando durante el Welcome tutorial. Se ha colocado como plugin en este workspace!",
|
||||
"updated": 1626642058733
|
||||
"updated": 1626642058733,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Lightning Strike ist das Demo Trading System, mit dem Sie während des Willkommens-Tutorials gespielt haben. Es wurde als Plugin in diesem Workspace platziert!",
|
||||
"updated": 1634588533500
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Sige la línea de puntos naranja hacia abajo hasta que encuentre el nodo al que se conecta. Usa el truco del teclado Ctrl + flechas para ir más rápido!",
|
||||
"updated": 1626642159336
|
||||
"updated": 1626642159336,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Folgen Sie der orange gepunkteten Linie nach unten, bis Sie den Knoten finden, mit dem es verbunden ist! Benutzen Sie den Tastaturtrick Ctrl + Pfeile, um schneller zu werden!",
|
||||
"updated": 1634588564331
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Eso es! Encontraste el nodo Lightning Strike Trading System. Si lo arrastras hacia un lado, encontrarás el nodo Plugin File Position debajo.",
|
||||
"updated": 1626642259700
|
||||
"updated": 1626642259700,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Das war's! Sie haben den Knoten Lightning Strike Trading System gefunden. Wenn Sie ihn zur Seite ziehen, finden Sie darunter den Knoten Plugin File Position.",
|
||||
"updated": 1634588578954
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "Aquí está la locura... el nodo Plugin File Position determina en qué parte del workspace el plugin es colocado.",
|
||||
"updated": 1626642524737,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Jetzt kommt der verrückte Teil... der Knoten Plugin File Position bestimmt, wo im Workspace das Plugin platziert wird!",
|
||||
"updated": 1634588642076
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "¡Por eso encontraste el nodo Trading System en la parte superior del nodo Plugin File Position!",
|
||||
"updated": 1626642599727,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Aus diesem Grund finden Sie den Knoten Trading System über dem Knoten Plugin File Position!",
|
||||
"updated": 1634588653804
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "¡Si eliminas el nodo Trading System, volvería a aparecer la próxima vez que recargues el workspace!¡Plugins se cargan desde el archivo plugin cada vez que se carga el workspace!",
|
||||
"updated": 1626642734045,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie den Knoten Trading System löschen, erscheint er wieder, wenn Sie den Workspace das nächste Mal neu laden! Plugins werden jedes Mal aus der Plugin-Datei geladen, wenn der Workspace geladen wird!",
|
||||
"updated": 1634588661690
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "¡No dudes en probarlo! Si lo desea, puedes eliminar el nodo Trading System y actualiza la página. Ten en cuenta que deberás encontrar el Basic Education Tutorial y hacer clic en Resume en el menú para continuar!",
|
||||
"updated": 1626642833516,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Probieren Sie es einfach aus! Wenn Sie möchten, können Sie den Knoten Trading System löschen und die Seite neu laden. Denken Sie daran, dass Sie das Tutorial zur Grundausbildung finden und im Menü auf Fortsetzen klicken müssen, um fortzufahren!",
|
||||
"updated": 1634588669393
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "Para colocar un plugin ien un workspace ¡debe seleccionar la opción para agregar los plugins que faltan en el nodo del tipo correspondiente!",
|
||||
"updated": 1626643106064,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Um ein Plugin in einem Workspace zu platzieren, müssen Sie die Option wählen, die fehlenden Plugins auf dem Knoten des passenden Typs hinzuzufügen!",
|
||||
"updated": 1634588716948
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "¡Intentémoslo! ¡Selecciona Add Missing Trading Systems en el nodo Plugin Trading Systems!",
|
||||
"updated": 1626643167865,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Probieren wir es aus! Wählen Sie Add Missing Trading Systems im Knoten Plugin Trading Systems!",
|
||||
"updated": 1634588730509
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "Nuevos nodos Plugin File se crean para cada plugin in \\Foundations\\Plugins\\Trading-Systems. Puede eliminar los nodos Plugin File que no necesita y conservar los que necesite! Luego, puedes agregar y anclar el nodo Plugin File Position donde deseas colocar la jerarquía del plugin. ",
|
||||
"updated": 1633282144023,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Für jedes Plugin in \\Foundations\\Plugins\\Trading-Systems werden neue Plugin File Knoten erstellt. Sie können die Plugin File Knoten, die Sie nicht benötigen, löschen und die gewünschten behalten! Fügen Sie nun den Knoten Plugin File Position hinzu und heften Sie ihn an die Stelle, an der Sie die Plugin Hierarchie platzieren möchten!",
|
||||
"updated": 1634588766367
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "Plugins se agregarán la próxima vez que cargue el workspace. Si deseas probarlo, ¡actualiza!",
|
||||
"updated": 1626643436449,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Plugins werden hinzugefügt, wenn Sie den Workspace das nächste Mal laden! Wenn Sie sie testen wollen, aktualisieren Sie!",
|
||||
"updated": 1634588775070
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+29
-2
@@ -21,6 +21,11 @@
|
||||
"text": "Recuerda que dije que el archivo plugin se carga cada vez que se carga el espacio de trabajo? Esta característica tiene una consecuencia inmediata ...",
|
||||
"updated": 1626655086632,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Erinnern Sie sich, dass ich sagte, dass die Plugin-Datei jedes Mal geladen wird, wenn der Workspace geladen wird? Diese Funktion hat eine unmittelbare Konsequenz...",
|
||||
"updated": 1634588859041
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "Las Hierarchies (Jerarquías) colocadas en el workspace como plugins (copias) no se guardan en el workspace por defecto. Como resultado, los cambios realizados en esas jerarquías no persiten, a menos que las salve en forma manual o habilite el guardado automático. ",
|
||||
"updated": 1633282516205,
|
||||
"style": "Warning"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Hierarchies , die als Plugins im Workspace platziert werden, werden standardmäßig nicht mit dem Workspace gespeichert. Infolgedessen bleiben Änderungen in diesen Hierarchien nicht erhalten, es sei denn, Sie speichern sie manuell oder aktivieren die automatische Speicherung.",
|
||||
"updated": 1634588866809
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "Hay dos casos principales para modificar los plugins:",
|
||||
"updated": 1633282630926,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es gibt zwei Hauptanwendungsfälle für die Änderung von Plugins:",
|
||||
"updated": 1634588872603
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -71,7 +86,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Desea modificar un plugin para hacer uno propio y continuar trabajando con la versión modificada en el futuro.",
|
||||
"updated": 1633282732027
|
||||
"updated": 1633282732027,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie möchten ein Plugin ändern, um es sich zu eigen zu machen und in Zukunft mit der geänderten Version weiter zu arbeiten.",
|
||||
"updated": 1634588878910
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -82,7 +103,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Desea actualizar y mejorar un plugin para contribuir en el mejoramiento del proyecto.",
|
||||
"updated": 1633282817838
|
||||
"updated": 1633282817838,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie möchten ein Plugin aktualisieren und verbessern, um die Verbesserungen zum Projekt beizutragen.",
|
||||
"updated": 1634588884937
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+8
-1
@@ -4,7 +4,14 @@
|
||||
"type": "Tutorial Step - GIF Saving Plugins",
|
||||
"definition": {
|
||||
"text": "This step will play a video in full screen mode.",
|
||||
"updated": 1628348731575
|
||||
"updated": 1628348731575,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "In diesem Schritt wird ein Video im Vollbildmodus abgespielt.",
|
||||
"updated": 1634589326828
|
||||
}
|
||||
]
|
||||
},
|
||||
"paragraphs": [
|
||||
{
|
||||
|
||||
+15
@@ -21,6 +21,11 @@
|
||||
"text": "Miremos el primer escenario: un caso típico es cuando desea introducir cambios a una estrategia incluída en el sistema para comenzar con una configuración probada.",
|
||||
"updated": 1633283150203,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Schauen wir uns das erste Szenario an: Ein typischer Fall ist, dass Sie Änderungen an einer Strategie vornehmen möchten, die mit dem System ausgeliefert wird, um mit einem bewährten Setup zu beginnen!",
|
||||
"updated": 1634589005531
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "Digamos que está listo para comenzar a jugar con una estrategia.. Quiere comenzar con una existente o introducir modificaciones para entender como trabajan las cosas. No tiene intensiones de contribuir con los cambios. Solo desea jugar con esto y cambiarlo a su gusto! Entonces, haga lo siguiente:",
|
||||
"updated": 1633283766269,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Nehmen wir an, Sie sind bereit, mit einer Strategie zu spielen. Sie möchten mit einer bestehenden Strategie beginnen und Änderungen einführen, um zu verstehen, wie die Dinge funktionieren. Sie haben nicht die Absicht, die Änderungen einzubringen. Sie wollen einfach nur damit spielen und sie nach Ihren Wünschen anpassen! Dann gehen Sie wie folgt vor:",
|
||||
"updated": 1634589029922
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "Borre el nodo Plugin File correspondiente al Trading System y restablezca el plugin file original en (\\Plugins\\Trading-Systems folder) como si fuera un a backup: arrastre el archivo y suéltelo en el Design Space! La estrategia ahora vive en el workspace y puede modificarlo y grabarlo.",
|
||||
"updated": 1633283708150,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Löschen Sie den Knoten der Plugin File, die dem Trading System entspricht, und stellen Sie die ursprüngliche Plugin-Datei (im Ordner \\Plugins\\Trading-Systems) wieder her, als ob es sich um eine Sicherungskopie handeln würde: Ziehen Sie die Datei und legen Sie sie im Design Space ab! Die Strategie befindet sich nun im Workspace und Sie können sie ändern und speichern!",
|
||||
"updated": 1634589037277
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+29
-2
@@ -21,6 +21,12 @@
|
||||
"text": "Si eres un desarrollador y estás probando un nuevo exchange. Deseas modificar el Sensor Bot para introducir una nueva característica o parámetro.",
|
||||
"updated": 1626710809333,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Zum zweiten Szenario: Nehmen wir an, Sie testen den EMA-Indikator, haben einen Fehler gefunden und wissen, wie man ihn beheben kann. Sie beabsichtigen, den Fehler zu beheben, damit alle davon profitieren!",
|
||||
"updated": 1634589198766,
|
||||
"style": "Definition"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,18 +47,39 @@
|
||||
"text": "El Sensor Bot es parte del Candles Data Mine, que generalmente se incluye como plugin en la mayoría de los workspaces de plugins. En tal caso, debes proceder como en el caso anterior: eliminar el nodo Plugin File correspondiente a los Candles Data Mine y restaurar el archivo de mina de datos desde la carpeta Plugins\\Data-Mines como si fuera un backup.",
|
||||
"updated": 1626709343670,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Dieser Indicator Bot ist Teil der Sparta Data Mine, die normalerweise als Plugin in einigen Plugin-Workspaces enthalten ist. Um das Plugin aus der UI Benutzeroberfläche heraus zu modifizieren und die Änderungen zu speichern, haben Sie zwei Möglichkeiten:",
|
||||
"updated": 1634589206307,
|
||||
"style": "Text"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Go to the corresponding Plugin File in the Plugins hierarchy and select Enable Saving With Workspace on the menu. Now the plugin file is updated every time you save the workspace to include the changes you may have introduced!",
|
||||
"updated": 1629909628165
|
||||
"updated": 1629909628165,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Gehen Sie zu dem entsprechenden Plugin File in der Plugins-Hierarchie und wählen Sie im Menü die Option Enable Saving With Workspace. Jetzt wird die Plugin-Datei jedes Mal aktualisiert, wenn Sie den Arbeitsbereich speichern, um die von Ihnen vorgenommenen Änderungen zu berücksichtigen!",
|
||||
"updated": 1634819321377
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Or use the Save Plugin option to manually save the plugin file whenever you wish to!",
|
||||
"updated": 1629909705348
|
||||
"updated": 1629909705348,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Oder verwenden Sie die Option \"Plugin speichern\", um die Plugin-Datei manuell zu speichern, wann immer Sie es wünschen!",
|
||||
"updated": 1634589217431,
|
||||
"style": "List"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+29
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Ahora que mencioné probar exchanges, hablemos un poco sobre cómo Superalgos los maneja y cuáles puede usar...",
|
||||
"updated": 1628014366400
|
||||
"updated": 1628014366400,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wir alle haben unsere bevorzugten Börsen... lassen Sie uns ein wenig darüber sprechen, wie Superalgos mit ihnen umgeht und welche Sie verwenden können...",
|
||||
"updated": 1634589422384
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,14 +44,27 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Superalgos usa CCXT, una biblioteca de código abierto que propone un estándar para las comunicaciones de API del mercado. El sistema funciona con intercambios que cumplen con el estándar:",
|
||||
"updated": 1628014486689
|
||||
"updated": 1628014486689,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos verwendet CCXT, eine Open-Source-Bibliothek, die einen Standard für die API-Kommunikation von Börsen vorschlägt. Das System arbeitet mit Börsen, die diesen Standard einhalten:",
|
||||
"updated": 1634589429073
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Link",
|
||||
"text": "List of Exchanges Pledging Compliance With CCXT->github.com/ccxt/ccxt/wiki/Exchange-Markets?r=Superalgos",
|
||||
"updated": 1616001030925
|
||||
"updated": 1616001030925,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Liste der Börsen, die sich zur Einhaltung von CCXT verpflichtet haben ->github.com/ccxt/ccxt/wiki/Exchange-Markets?r=Superalgos",
|
||||
"updated": 1634589471287
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Note",
|
||||
@@ -61,7 +80,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Aparecer en la lista no es suficiente! ¡Muchos exchanges no cumplen! Como resultado, hay un esfuerzo comunitario continuo para probar los exchanges y documentar qué se puede usar con Superalgos y cómo. Mira el TOC para encontrar qué intercambios se han probado y en qué medida.",
|
||||
"updated": 1628014928782
|
||||
"updated": 1628014928782,
|
||||
"style": "Note"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Aufnahme in die Liste ist jedoch nicht ausreichend! Viele Börsen halten sich nicht wirklich daran! Daher gibt es laufende Bemühungen der Community, Börsen zu testen und zu dokumentieren, welche mit Superalgos verwendet werden können und wie! Dies ist das Thema in den Docs, das diese Bemühungen abdeckt. Schauen Sie sich das TOC an, um herauszufinden, welche Börsen getestet wurden und in welchem Umfang.",
|
||||
"updated": 1634589436559
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Si eres un desarrollador y tu intercambio preferido no ha sido probado, ¡puedes unirte al esfuerzo y ayudar con las pruebas!",
|
||||
"updated": 1628015097699
|
||||
"updated": 1628015097699,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie ein Entwickler sind und Ihre bevorzugte Börse noch nicht getestet wurde, können Sie sich an den Bemühungen beteiligen und beim Testen helfen!",
|
||||
"updated": 1634589557030
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Este tema en los Documentos explica cómo depurar el Sensor Bot para que obtenga datos de un exchange. Si el exchange admite las funciones básicas requeridas por Superalgos, ¡deberías terminar con una solución!",
|
||||
"updated": 1628015199818
|
||||
"updated": 1628015199818,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Dieses Thema in den Docs erklärt, wie man den Sensor Bot debuggt, um ihn dazu zu bringen, Daten von einer Börse zu holen. Wenn die Börse die von Superalgos geforderten Grundfunktionen unterstützt, sollten Sie am Ende eine Lösung haben!",
|
||||
"updated": 1634589564876
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Compartir la solución con la comunidad es una contribución valiosa. ¡Los que vengan pronto podrán disfrutar de su exchange favorito!",
|
||||
"updated": 1628015422895
|
||||
"updated": 1628015422895,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Das Teilen der Lösung mit der Community ist ein wertvoller Beitrag. Jeder, der als nächstes kommt, kann sich auch an seiner Lieblingsbörse erfreuen!",
|
||||
"updated": 1634589572089
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Te recomendamos que completes tu educación con todos los tutoriales antes de sumergirte en la configuración de otros exchanges.",
|
||||
"updated": 1628015615665
|
||||
"updated": 1628015615665,
|
||||
"style": "Important"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wir empfehlen Ihnen dringend, Ihre Ausbildung auf Superalgos zu vervollständigen und alle Tutorials zu absolvieren, bevor Sie sich an die Einrichtung anderer Börsen machen.",
|
||||
"updated": 1634589578473
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "Hablando de exchanges y plugins probados, hay un espacio de trabajo de plugins que se puede usar como borrón y cuenta nueva al diseñar cosas nuevas.",
|
||||
"updated": 1628015811665,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Apropos getestete Börsen und Plugins: Es gibt einen Plugin Workspace, den Sie als saubere Schiefertafel verwenden können, wenn Sie neue Sachen entwerfen!",
|
||||
"updated": 1634589661481
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "¡Es el Tested Exchanges Plugin Workspace!",
|
||||
"updated": 1628015859577,
|
||||
"style": "Note"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es ist der Blank Template Plugin Workspace!",
|
||||
"updated": 1634589668492
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "Una vez que termines tu educación inicial con todos los tutoriales existentes, eventualmente estarás listo para comenzar a construir tu propio Trading System. ¡Este es el Plugin Workspace que puedes usar para ese propósito!",
|
||||
"updated": 1628016330767,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie Ihre anfängliche Ausbildung mit allen vorhandenen Tutorials abgeschlossen haben, werden Sie schließlich bereit sein, mit dem Aufbau Ihres eigenen Trading Systems zu beginnen. Dies ist der Plugin Workspace, den Sie zu diesem Zweck verwenden können!",
|
||||
"updated": 1634589676279
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "Cuenta con un Trading System limpio desde el primer momento, el Install New Market Tutorial y la línea de exchages probados que puedes usar.",
|
||||
"updated": 1628016671067,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Hier finden Sie ein sauberes Trading System, das sofort einsatzbereit ist, das New Market Tutorial installieren und eine Reihe von getesteten Börsen, die Sie verwenden können.",
|
||||
"updated": 1634589725969
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "Los datos que descargas de los exchanges y procesas están disponibles en todos los ámbitos, accesibles desde cualquier Workspace y estrategia.",
|
||||
"updated": 1628020470335,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Daten, die Sie von den Börsen herunterladen und mit den Indikatoren verarbeiten, sind übergreifend verfügbar und von jedem Workspace und jeder Strategie aus zugänglich.",
|
||||
"updated": 1634589901473
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "Los datos se almacenan en el disco en la carpeta Data-Storage y están organizados por Project, Data Mine, bot y Market. No importa qué Worksapce hayas utilizado para minar los datos o los indicadores de proceso.",
|
||||
"updated": 1628017724144,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Daten werden auf der Festplatte im Ordner Data-Storage gespeichert und sind nach Project, Data Mine, Bot und Market geordnet. Es spielt keine Rolle, in welchem Workspace Sie die Daten gewonnen oder die Indikatoren verarbeitet haben.",
|
||||
"updated": 1634589981672
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -59,6 +69,11 @@
|
||||
"text": "Todos los datos están disponibles para todos los espacios de trabajo, por lo que puedes trabajar con las mismas fuentes de datos independientemente de lo que estés haciendo.",
|
||||
"updated": 1628017031765,
|
||||
"style": "Note"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Alle Daten stehen in allen Workspaces zur Verfügung, so dass Sie unabhängig von Ihrer Tätigkeit mit denselben Datenquellen arbeiten können.",
|
||||
"updated": 1634589990093
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -78,6 +93,11 @@
|
||||
"text": "No hay gestión de datos incorporada en la aplicación. ¡Utilice tu sistema de archivos!",
|
||||
"updated": 1628019703596,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es gibt keine integrierte Datenverwaltung in der App. Verwenden Sie stattdessen Ihr Dateisystem!",
|
||||
"updated": 1634589996758
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "¡Puedes trabajar con cualquiera de los mercados listados en el exchange! ¡Echa un vistazo a la configuración en el nodo Exchange Markets!",
|
||||
"updated": 1628020751758,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie können mit jedem der an der Börse gelisteten Märkte arbeiten! Werfen Sie einen Blick auf die Einrichtung im Knoten Exchange Markets!",
|
||||
"updated": 1634590229826
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "No voy a explicar cómo configurar nuevos mercados, ya que el tema se trata en Install a New Market Tutorial in the Install a New Market Tutorial Plugin Workspace. ¡Solo quería hacerte saber que es fácil!",
|
||||
"updated": 1628020854073,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ich werde nicht erklären, wie man neue Märkte einrichtet, da das Thema im Tutorial Install a New Market Tutorial im the Install a New Market Tutorial Plugin Workspace behandelt wird. Ich wollte Sie nur wissen lassen, dass es ganz einfach ist!",
|
||||
"updated": 1634590236889
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "¡Eche un vistazo al menú del mercado BTC/USDT! Observe los botones \"Install Market\" y \"Uninstall Market\" . ¡Asi es como lo haces!",
|
||||
"updated": 1628021245760,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Werfen Sie einen Blick auf das Menü des BTC/USDT-Marktes! Beachten Sie die Schaltflächen \"Install Market\" und \"Uninstall Market\"! So machen Sie es!",
|
||||
"updated": 1634590245917
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "¡Lo dejaré así y te dejaré hacer el Install a New Market Tutorial cuando sea tu tiempo!",
|
||||
"updated": 1628021318712,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": " Ich lasse es dabei bewenden und überlasse Ihnen das Install a New Market Tutorial, wenn die Zeit reif ist!",
|
||||
"updated": 1634590252957
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+21
-3
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Si eres un desarrollador o tienes al menos un conocimiento básico de JavaScript, ¡podrás crear tus propios indicadores!",
|
||||
"updated": 1628022227899
|
||||
"updated": 1628022227899,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie ein Entwickler sind oder zumindest ein grundlegendes Verständnis von JavaScript haben, werden Sie in der Lage sein, Ihre eigenen Indikatoren zu erstellen!",
|
||||
"updated": 1634590305087
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Esta es una característica crucial de Superalgos, ya que la inteligencia comercial no puede surgir sin la capacidad de analizar los datos del mercado. Una vez más, no voy a explicar cómo crear indicadores en este momento, ¡pero deseo informarte que lo tenemos cubierto!",
|
||||
"updated": 1628022270052
|
||||
"updated": 1628022270052,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Dies ist eine wichtige Funktion von Superalgos, denn ohne die Möglichkeit, Marktdaten zu analysieren, kann keine Handelsintelligenz entstehen! Ich werde an dieser Stelle nicht näher darauf eingehen, wie man Indikatoren erstellt, aber ich möchte Sie darauf hinweisen, dass wir für Sie da sind!",
|
||||
"updated": 1634590310614
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Hay una serie completa de tutoriales en video que explican todo el proceso! ¡Echa un vistazo rápido a esta página en los Documentos!",
|
||||
"updated": 1628022294402
|
||||
"updated": 1628022294402,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es gibt eine umfassende Reihe von Vid eo-Tutorials, die den gesamten Prozess erklären! Werfen Sie einen kurzen Blick auf diese Seite in den Docs!",
|
||||
"updated": 1634590316626
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "¡Los indicadores los construye la comunidad! Un desarrollador construirá indicadores que necesita y los aportará al proyecto en una nueva mina de datos.",
|
||||
"updated": 1628024771860,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Indikatoren werden von der Community erstellt! Normalerweise baut ein Entwickler ein paar Indikatoren, die er oder sie braucht, und stellt sie dem Projekt in einer neuen Data Mine zur Verfügung!",
|
||||
"updated": 1634590447390
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "El Community Data Mines Book es donde puedes encontrar todas los Data Mines y sus indicadores. Cada capítulo del libro corresponde a un Data Mine...",
|
||||
"updated": 1628024715026,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Im Community Data Mines Buch finden Sie alle bestehenden Data Mines und ihre Indikatoren! Jedes Kapitel des Buches entspricht einer Data Mine...",
|
||||
"updated": 1634590455084
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -59,6 +69,11 @@
|
||||
"text": "¡Escanea el contenido de cada capítulo para saber de lo que está disponible en este momento!",
|
||||
"updated": 1628023653141,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Scannen Sie den Inhalt jedes Kapitels, um eine Vorstellung davon zu bekommen, was an dieser Stelle verfügbar ist!",
|
||||
"updated": 1634590467643
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -78,6 +93,11 @@
|
||||
"text": "Para usar un Data Mine, debes incluirlo en el espacio de trabajo o como complemento e instalar el mercado. ¡Todas las tareas de datos se crearán automáticamente!",
|
||||
"updated": 1628024742935,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Um eine Data Mine zu verwenden, müssen Sie sie in den Workspace oder als Plugin einbinden und den Markt installieren. Alle Data Tasks werden dann automatisch erstellt!",
|
||||
"updated": 1634590473687
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -15,6 +15,11 @@
|
||||
"text": "¿Se preguntas cómo obtener datos de fuentes distintas a los intercambios en CCXT? Messari? Twitter? ¡Te tenemos cubierto!",
|
||||
"updated": 1628032498537,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie fragen sich, wie Sie in CCXT Daten aus anderen Quellen als Börsen erhalten können? Messari? Twitter? Wir haben die Lösung für Sie!",
|
||||
"updated": 1634590563604
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -29,6 +34,11 @@
|
||||
"text": "Superalgos le permite obtener datos de cualquier API en Internet, ¡y no necesitas programar para hacerlo! En su lugar, puedes diseñar un API Map o utilizar los que se envían con el sistema.",
|
||||
"updated": 1628032719618,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos ermöglicht es Ihnen, Daten von jeder beliebigen API im Internet abzurufen, und Sie müssen dafür nicht programmieren! Stattdessen können Sie eine API Map entwerfen oder die mit dem System mitgelieferten verwenden!",
|
||||
"updated": 1634590573292
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -42,6 +52,11 @@
|
||||
"text": "Un API Map es un conjunto de definiciones que dictan cómo un bot puede acceder a una API en particular y cómo interpretar las respuestas del servidor.",
|
||||
"updated": 1628032814964,
|
||||
"style": "Note"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Eine API Map ist eine Reihe von Definitionen, die festlegen, wie ein Bot auf eine bestimmte API zugreifen kann und wie die Antworten des Servers zu interpretieren sind.",
|
||||
"updated": 1634590580114
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -55,6 +70,11 @@
|
||||
"text": "¡Sumérgete en esta sección del Data Mining para explorar el panorama de API!",
|
||||
"updated": 1628032872757,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Tauchen Sie in diesen Abschnitt des Data-Mining-Themas ein, wenn Sie bereit sind, die API-Landschaft zu erkunden!",
|
||||
"updated": 1634590587052
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "¡La comunidad también puede contribuir con Trading Systems! En este punto, solo quedan unos pocos, ¡pero esperamos que surjan más pronto!",
|
||||
"updated": 1628032965847,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Community kann auch Trading Systeme beisteuern! Im Moment gibt es nur ein paar, aber wir hoffen, dass bald mehr dazukommen!",
|
||||
"updated": 1634590727541
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "Busca en los documentos Community Trading Systems!",
|
||||
"updated": 1628032998404,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Suchen Sie in den Docs nach Trading Systemen der Community!",
|
||||
"updated": 1634590737156
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "Strategies contribuidas por el Community están documentados para que pueda usarlos para aprender.",
|
||||
"updated": 1628033107293,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Strategies, die von der Community beigesteuert werden, sind vollständig dokumentiert, so dass Sie sie zum Lernen verwenden können!",
|
||||
"updated": 1634590749764
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "Recuerda que mientras Trading Systems en Superalgos pueden ser completamente funcionales, ¡están disponibles solo con fines educativos! ¡Eres completamente responsable de cómo lo usas! ¡Trading es un negocio arriesgado!",
|
||||
"updated": 1628033267499,
|
||||
"style": "Warning"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Denken Sie daran, dass Trading Systeme, die mit Superalgos ausgeliefert werden, zwar voll funktionsfähig sind, aber nur zu Lernzwecken zur Verfügung gestellt werden! Sie sind voll verantwortlich dafür, wie Sie sie nutzen! Handeln ist ein riskantes Geschäft!",
|
||||
"updated": 1634590755873
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "¡Felicidades! Te has graduado de tu Basic Education y estas listo para pasar a cosas más avanzadas!",
|
||||
"updated": 1628034332132,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Herzlichen Glückwunsch! Sie haben Ihre Grundausbildung abgeschlossen und sind nun bereit für fortgeschrittenere Dinge!",
|
||||
"updated": 1634590980526
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "En el siguiente tutorial, aprenderás cómo actualizar tu aplicación, cambiar de rama para probar la versión en la rama de desarrollo, algunos trucos sobre los Documentos y más.",
|
||||
"updated": 1628033834427,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Im nächsten Tutorial werden Sie lernen, wie Sie Ihre Anwendung aktualisieren, den Zweig wechseln, um die Version im Entwicklungszweig zu testen, ein paar Tricks zu den Docs und vieles mehr!",
|
||||
"updated": 1634590987001
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "¡También podrás enviar una reseña sobre tu experiencia con Superalgos hasta este momento!",
|
||||
"updated": 1628033856097,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie werden auch die Möglichkeit haben, einen Bericht über Ihre bisherigen Erfahrungen mit Superalgos zu verfassen!",
|
||||
"updated": 1634590998253
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "A medida que avanzas, es posible que necesites un repaso de los temas tratados en este tutorial o en el anterior. Esa es una práctica estándar, ¡así que regresa hasta que aprenda todos los trucos!",
|
||||
"updated": 1628033960361,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie mit Superalgos weiterkommen, brauchen Sie vielleicht eine Auffrischung der Themen, die in diesem oder dem vorherigen Tutorial behandelt wurden! Das ist eine gängige Praxis, also kommen Sie wieder, bis Sie alle Tricks gelernt haben!",
|
||||
"updated": 1634591004640
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+23
-1
@@ -21,6 +21,11 @@
|
||||
"text": "¡Todavía estás aquí, ahora con los dos primeros tutoriales en tu haber! ¡Ya eres familia! Bienvenido a la Community!",
|
||||
"updated": 1628112222837,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Du bist immer noch da, jetzt mit den ersten beiden Tutorials unter deinem Gürtel! Du gehörst schon zur Familie! Willkommen in der Community!",
|
||||
"updated": 1634819545877
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "En este tutorial, aprenderás a mantener tu sistema actualizado, utilizar la línea de comandos incorporada, cambiar de rama y algunos trucos más que le facilitarán la vida.",
|
||||
"updated": 1628112392254,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "In diesem Tutorial lernst du, dein System auf dem neuesten Stand zu halten, die eingebaute Kommandozeile zu benutzen, Zweige zu wechseln und ein paar weitere Tricks, die dir das Leben leichter machen werden!",
|
||||
"updated": 1634819554314
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,13 +70,25 @@
|
||||
"text": "¡Las habilidades que aprenderás también te permitirán comenzar a contribuir al proyecto! Recuerda, este es un proyecto comunitario ... ¡Se espera que todos retribuyamos y ayudemos a mejorar el software!",
|
||||
"updated": 1628112441113,
|
||||
"style": "Note"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Fähigkeiten, die Sie erlernen werden, werden es Ihnen auch ermöglichen, einen Beitrag zum Projekt zu leisten! Denken Sie daran, dass dies ein Community-Projekt ist... Es wird von uns allen erwartet, dass wir etwas zurückgeben und helfen, die Software zu verbessern!",
|
||||
"updated": 1634819569822
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Link",
|
||||
"text": "By the way, contributing to the project earns you Superalgos (SA) tokens! Click to learn more!->superalgos.org/token-overview.shtml",
|
||||
"updated": 1617035100951
|
||||
"updated": 1617035100951,
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Übrigens, wenn Du zum Projekt beiträgst, erhältst Du Superalgos (SA) Token! Klicke, um mehr zu erfahren!->superalgos.org/token-overview.shtml",
|
||||
"updated": 1634819622423
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+35
@@ -21,6 +21,11 @@
|
||||
"text": "Hablemos de mi amigo, el cuadro de búsqueda en Documentos. Tiene una doble vida: busca, ¡pero también manda!",
|
||||
"updated": 1628112617535,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Reden wir über meine Freundin, das Suchfeld in den Docs. Sie führt ein Doppelleben: Sie sucht, aber sie befiehlt auch!",
|
||||
"updated": 1634819878309
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "El cuadro de búsqueda también es interfaz de línea de comandos! La lista de comandos tiene que ver con:",
|
||||
"updated": 1628113873377,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ich meine, das Suchfeld ist auch eine Befehlszeilenschnittstelle! Die aktuelle Liste der Befehle hat zu tun mit:",
|
||||
"updated": 1634819893918
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "Producir y editar los documentos.",
|
||||
"updated": 1628113477717,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Erstellen und Bearbeiten der Docs.",
|
||||
"updated": 1634819900164
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -72,6 +87,11 @@
|
||||
"text": "Obteniendo actualizaciones.",
|
||||
"updated": 1628113492383,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Aktualisierungen erhalten.",
|
||||
"updated": 1634819905627
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -91,6 +111,11 @@
|
||||
"text": "Contribuir con trabajo al proyecto.",
|
||||
"updated": 1628113514180,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Arbeiten zum Projekt beitragen.",
|
||||
"updated": 1634819911378
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -110,6 +135,11 @@
|
||||
"text": "¡Trabajemos en un ejemplo práctico! ¡Te enseñaré cómo editar los documentos y cómo contribuir con un par de comandos!",
|
||||
"updated": 1628113897204,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Lassen Sie uns an einem praktischen Beispiel arbeiten, das diese beiden Punkte beinhaltet! Ich zeige Ihnen, wie Sie die Dokumente bearbeiten und wie Sie mit einigen Befehlen zum Projekt beitragen können!",
|
||||
"updated": 1634819926122
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -129,6 +159,11 @@
|
||||
"text": "Prepararé los siguientes pasos con una pequeña historia ... ¡Espero que les guste la idea!",
|
||||
"updated": 1628113581278,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ich werde die nächsten Schritte mit einer kleinen Geschichte einleiten... Ich hoffe, die Idee gefällt Ihnen!",
|
||||
"updated": 1634819933239
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Superalgos es un proyecto comunitario! Ponemos el software a disposición de todos de forma gratuita, pero pedimos algo a cambio ... ¡Tu ayuda!",
|
||||
"updated": 1628114247399
|
||||
"updated": 1628114247399,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos ist ein Community-Projekt! Wir stellen die Software für jeden kostenlos zur Verfügung, aber wir bitten um eine Gegenleistung... Ihre Hilfe!",
|
||||
"updated": 1634819982808
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¿Cómo puede ser gratuito Superalgos? ¿Cuál es el truco? ¡Recibimos esas preguntas a menudo! ",
|
||||
"updated": 1628114531768
|
||||
"updated": 1628114531768,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wie kann Superalgos kostenlos sein? Wo ist der Haken? Diese Fragen bekommen wir oft gestellt! Dies ist die kurze Geschichte...",
|
||||
"updated": 1634819991250
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Superalgos comenzó con un grupo de amigos que unieron fuerzas para automatizar crypto trading!",
|
||||
"updated": 1628114508545
|
||||
"updated": 1628114508545,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos begann mit einer Gruppe von Freunden, die sich zusammentaten, um ihren Kryptohandel zu automatisieren!",
|
||||
"updated": 1634820005138
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Para competir con los jugadores top del mercado se necesitaba una enorme infraestructura de software. El sistema tenía que estar a la par o mejor que el software comercial y propietario disponible para las empresas. Un equipo pequeño no podría cumplir con estos requisitos, al menos no en un plazo razonable. ",
|
||||
"updated": 1628116653688
|
||||
"updated": 1628116653688,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Die Freunde erkannten bald, dass eine riesige Software-Infrastruktur erforderlich war, um mit den Top-Marktteilnehmern konkurrieren zu können. Das System musste gleichwertig oder besser sein als kommerzielle und proprietäre Software, die den Unternehmen zur Verfügung steht. Solche Anforderungen konnten von einem kleinen Team nicht erfüllt werden - zumindest nicht in einem vernünftigen Zeitrahmen.",
|
||||
"updated": 1634820012134
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+20
@@ -21,6 +21,11 @@
|
||||
"text": "¡Superalgos es gratis para todos porque queremos tu ayuda! ¡Queremos que las mejores mentes nos ayuden a construir la plataforma de automatización trading definitiva!",
|
||||
"updated": 1628116911425,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos ist für jeden kostenlos, weil wir Ihre Hilfe wollen! Wir möchten, dass die besten Köpfe in diesem Bereich uns helfen, die ultimative Handelsautomatisierungsplattform zu bauen!",
|
||||
"updated": 1634820114946
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "¡Tu primera contribución es tu feedback!",
|
||||
"updated": 1628116797218,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ihr erster Beitrag ist Ihr Feedback!",
|
||||
"updated": 1634820120530
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": " ¡Queremos tener tu primera impresión, fresca de la experiencia reciente! Y queremos que sus comentarios iniciales sean la primera de muchas contribuciones al proyecto.",
|
||||
"updated": 1628117475146,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie haben wahrscheinlich Stunden damit verbracht, Superalgos zu entdecken. Wir möchten Ihren ersten Eindruck haben, frisch aus der jüngsten Erfahrung! Und wir möchten, dass Ihr erstes Feedback der erste von vielen Beiträgen zu diesem Projekt ist.",
|
||||
"updated": 1634820126153
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "No necesitas ser un programador estrella o un trader profesional para contribuir. ¡Se espera que cada usuario retribuya! ¡Te diré cómo!",
|
||||
"updated": 1628118458317,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Sie müssen kein Starprogrammierer oder professioneller Händler sein, um einen Beitrag zu leisten. Von jedem Nutzer wird erwartet, dass er etwas zurückgibt! Ich sage Ihnen wie!",
|
||||
"updated": 1634820132090
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+63
-9
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "El proyecto tendrá éxito si logra fomentar la colaboración global. ¡Damos la bienvenida a contribuciones de todo tipo para que todos puedan retribuir!",
|
||||
"updated": 1628118496073
|
||||
"updated": 1628118496073,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Das Projekt wird erfolgreich sein, wenn es gelingt, die globale Zusammenarbeit zu fördern. Wir freuen uns über alle Arten von Beiträgen, damit jeder etwas zurückgeben kann!",
|
||||
"updated": 1634820280449
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": " ¡todo lo que aporta valor es bueno!",
|
||||
"updated": 1628118567325
|
||||
"updated": 1628118567325,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Kurz gesagt, alles, was einen Mehrwert bringt, ist gut!",
|
||||
"updated": 1634820289080
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Corregir un error tipográfico, un enlace muerto y mejorar los documentos.",
|
||||
"updated": 1628118554377
|
||||
"updated": 1628118554377,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Behebung eines Tippfehlers, eines toten Links und Verbesserung der Docs.",
|
||||
"updated": 1634820303013
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Traducir una página a tu idioma nativo. ",
|
||||
"updated": 1628118674592
|
||||
"updated": 1628118674592,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Übersetzen Sie eine Seite in Ihre Muttersprache.",
|
||||
"updated": 1634820310919
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -91,7 +115,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Diseñar iconos, trabajar para mejorar la UX / UI.",
|
||||
"updated": 1628118538116
|
||||
"updated": 1628118538116,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Entwerfen Sie Icons, arbeiten Sie an der Verbesserung der UX/UI.",
|
||||
"updated": 1634820320224
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -109,7 +139,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Producir tutoriales o videos en la aplicación.",
|
||||
"updated": 1628119033704
|
||||
"updated": 1628119033704,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Inhalte als In-App-Tutorials oder Videos produzieren.",
|
||||
"updated": 1634820337889
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -127,7 +163,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Bloguear sobre Superalgos y correr la voz.",
|
||||
"updated": 1628119048711
|
||||
"updated": 1628119048711,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Über Superalgos bloggen und das Wort verbreiten.",
|
||||
"updated": 1634820349026
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -145,7 +187,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Compartiendo un Data Mine o un Trading System!",
|
||||
"updated": 1628119096734
|
||||
"updated": 1628119096734,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Eine Data Mine oder ein Trading System teilen!",
|
||||
"updated": 1634820355611
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -163,7 +211,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Probar, eliminar errores, integrar proyectos criptográficos y contribuir al código base.",
|
||||
"updated": 1628119117489
|
||||
"updated": 1628119117489,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Testen, Bugs entfernen, Krypto-Projekte integrieren und zur Codebasis beitragen.",
|
||||
"updated": 1634820362968
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-1
@@ -21,6 +21,11 @@
|
||||
"text": "¡Aprovecharse no es cool! Sabemos que una vez que comiences a contribuir, inspirarás a más personas a seguir tu ejemplo.",
|
||||
"updated": 1628119445138,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Trittbrettfahren ist nicht cool! Wir wissen, dass Sie, sobald Sie einen Beitrag leisten, mehr Leute dazu inspirieren werden, Ihrem Beispiel zu folgen!",
|
||||
"updated": 1634820436879
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,12 +46,24 @@
|
||||
"text": "El proyecto ha implementado un poderoso esquema de incentivos para promover el comportamiento deseado y fomentar una cultura de colaboración. ¡Estamos distribuyendo el token de Superalgos (SA) exclusivamente entre los contribuyentes!",
|
||||
"updated": 1628121558894,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Das Projekt hat ein starkes Anreizsystem eingeführt, um das gewünschte Verhalten zu fördern und eine Kultur der Zusammenarbeit zu unterstützen. Wir verteilen den Superalgos (SA) Token ausschließlich an Mitwirkende!",
|
||||
"updated": 1634820476632
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Link",
|
||||
"text": "Learn more about the Superalgos SA Token!->superalgos.org/token-overview.shtml"
|
||||
"text": "Learn more about the Superalgos SA Token!->superalgos.org/token-overview.shtml",
|
||||
"translations": [
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Erfahren Sie mehr über den Superalgos SA Token!->superalgos.org/token-overview.shtml ",
|
||||
"updated": 1634820515144
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"style": "Success",
|
||||
@@ -64,6 +81,11 @@
|
||||
"text": "¡Combatimos el free-riding con incentivos!",
|
||||
"updated": 1628121572845,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wir bekämpfen Trittbrettfahren mit Anreizen!",
|
||||
"updated": 1634820484905
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -83,6 +105,11 @@
|
||||
"text": "¡Pongamos en marcha tu primera contribución! ¡Primero, te enseñaré cómo cambiar de rama!",
|
||||
"updated": 1628121589878,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Lassen Sie uns Ihren ersten Beitrag ins Rollen bringen! Zuerst zeige ich Ihnen, wie Sie den Zweig wechseln können!",
|
||||
"updated": 1634820492671
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Superalgos te permite cambiar de rama directamente desde la aplicación! Pero, ¿por qué querrías cambiar de rama?",
|
||||
"updated": 1628122007840
|
||||
"updated": 1628122007840,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Mit Superalgos können Sie direkt aus der App heraus den Zweig wechseln! Aber warum sollten Sie den Zweig (Branch) wechseln wollen?",
|
||||
"updated": 1634821291313
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Superalgos está mejorando constantemente. En algún momento, es posible que desee probar la versión del software en la rama de desarrollo. Tal vez haya una nueva característica o una solución para un error que aún no ha llegado a la rama maestra...",
|
||||
"updated": 1628122074246
|
||||
"updated": 1628122074246,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Superalgos wird ständig weiterentwickelt. Irgendwann möchten Sie vielleicht die Softwareversion im Entwicklungszweig ausprobieren. Vielleicht gibt es eine neue Funktion oder eine Fehlerbehebung, die es noch nicht in den Master-Zweig geschafft hat...",
|
||||
"updated": 1634821261891
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "¡Tal vez desees enviar una contribución, como en nuestro caso ahora mismo! ¡hagámoslo!",
|
||||
"updated": 1628122187462
|
||||
"updated": 1628122187462,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Oder Sie möchten einen Beitrag einreichen, wie in unserem Fall gerade jetzt! Los geht's!",
|
||||
"updated": 1634821203097
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Desplázate hacia abajo en Docs hasta el pie de página y selecciona Plugins-Docs. ¡Es la opción del lado derecho, no del centro!",
|
||||
"updated": 1628122390826
|
||||
"updated": 1628122390826,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Scrollen Sie auf der Docs-Seite bis zur Fußzeile und wählen Sie Plugins-Docs als Ihren Beitragszweig! Es ist die Option auf der rechten Seite, nicht in der Mitte! ",
|
||||
"updated": 1634821230874
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+28
-4
@@ -19,7 +19,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Si todo salió bien, ¡debes haber recibido una confirmación de que se cambió la Rama de Contribuciones! ¡Increíble!",
|
||||
"updated": 1628122632849
|
||||
"updated": 1628122632849,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn alles gut gegangen ist, müssen Sie eine Bestätigung erhalten haben, dass der Beitragszweig geändert wurde! Großartig!",
|
||||
"updated": 1634821709445
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -38,7 +44,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "El siguiente en la línea es cambiar la rama actual, ¡pero primero debemos ejecutar algunas comprobaciones!",
|
||||
"updated": 1628122656402
|
||||
"updated": 1628122656402,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Als nächstes steht der Wechsel des aktuellen Zweigs an, aber vorher müssen wir noch einige Prüfungen durchführen!",
|
||||
"updated": 1634821735341
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -56,7 +68,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Si has hecho fork en el repositorio de Superalgos antes del 6 de abril de 2021, sigue las instrucciones de esta página para crear la rama plugins-docs. De lo contrario, ¡sigue adelante!",
|
||||
"updated": 1628122733300
|
||||
"updated": 1628122733300,
|
||||
"style": "Callout"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie das Superalgos-Projektarchiv vor dem 6. April 2021 geforkt haben, folgen Sie den Anweisungen auf dieser Seite, um den plugins-docs-Zweig zu erstellen. Ansonsten machen Sie weiter!",
|
||||
"updated": 1634821743479
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +92,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Cuando cambias de rama, la app ejecuta una serie de comandos de Git que descargan el software de la rama plugins-docs de tu fork. ¡El software actual será reemplazado en tu disco!Deberás cerrar la app después de cambiar. ¡Veamos unas cosas antes de continuar!",
|
||||
"updated": 1628123112818
|
||||
"updated": 1628123112818,
|
||||
"style": "Text"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie den Zweig wechseln, wird die Anwendung eine Reihe von Git-Befehlen ausführen, die die Software aus dem plugins-docs-Zweig Ihres Forks herunterladen! Die aktuelle Software wird auf Ihrer Festplatte ersetzt! Aus diesem Grund müssen Sie die Anwendung nach dem Wechsel schließen. Aber lassen Sie uns noch ein paar Dinge besprechen, bevor Sie fortfahren!",
|
||||
"updated": 1634821752941
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+25
@@ -21,6 +21,11 @@
|
||||
"text": "¡Hay algunas cosas que debes considerar cada vez que cambies de rama! ¡Antes de cambiar de rama, haz un Backup!",
|
||||
"updated": 1628204902504,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es gibt ein paar Dinge, die Sie bei jedem Wechsel des Zweigs beachten sollten! Gehen wir eine kurze Liste durch, bevor Sie fortfahren!\n",
|
||||
"updated": 1634821919162
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -41,6 +46,11 @@
|
||||
"text": "Puede suceder que los workspaces u otras estructuras de datos en la rama maestra no sean compatibles con las de la otra rama.",
|
||||
"updated": 1628204467432,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es kann vorkommen, dass die Arbeitsbereiche oder andere Datenstrukturen im Master-Zweig nicht mit denen im anderen Zweig kompatibel sind.",
|
||||
"updated": 1634821927757
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -60,6 +70,11 @@
|
||||
"text": "Si el Workspace actual es incompatible con el software de la otra rama, puede romperse al volver a cargar la aplicación. En tal caso, carga uno de los Plugin Workspaces de la nueva rama.",
|
||||
"updated": 1628204753630,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn der aktuelle Arbeitsbereich nicht mit der Software im anderen Zweig kompatibel ist, kann der Arbeitsbereich beim erneuten Laden der Anwendung abbrechen. Laden Sie in einem solchen Fall einen der Plugin Workspaces des neuen Zweigs.",
|
||||
"updated": 1634821952256
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -79,6 +94,11 @@
|
||||
"text": "¡La estructura de los datos extraídos puede haber cambiado!",
|
||||
"updated": 1628204506303,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Auch die Struktur der verarbeiteten Daten kann sich geändert haben!",
|
||||
"updated": 1634821958505
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -98,6 +118,11 @@
|
||||
"text": "Lee el archivo README en la rama del repositorio al que deseas acceder para comentarios sobre la compatibilidad con versiones anteriores. ",
|
||||
"updated": 1628204891328,
|
||||
"style": "Important"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Prüfen Sie immer die README-Datei in dem Zweig des Repositorys, auf das Sie zugreifen möchten, auf Kommentare zur Abwärtskompatibilität. Bevor Sie den Zweig wechseln, sichern Sie Ihre Arbeit!",
|
||||
"updated": 1634821965825
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+35
-5
@@ -25,7 +25,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "El repositorio de Superalgos presenta tres ramas principales: master, develop, y el que estamos buscando, plugins-docs.",
|
||||
"updated": 1628121680964
|
||||
"updated": 1628121680964,
|
||||
"style": "Definition"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Das Superalgos-Repository hat drei Hauptzweige: master, develop und den, nach dem wir suchen, plugins-docs.",
|
||||
"updated": 1634821013096
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -50,7 +56,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Puede que haya más, ¡pero estos son los principales!",
|
||||
"updated": 1628121700843
|
||||
"updated": 1628121700843,
|
||||
"style": "Success"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Es gibt vielleicht noch mehr, aber das sind die wichtigsten!",
|
||||
"updated": 1634821022072
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -73,7 +85,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Master Branch: Es la versión estable del software. ¡Nunca envíes contribuciones a esta rama!",
|
||||
"updated": 1628121827428
|
||||
"updated": 1628121827428,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Master Branch: Enthält die stabile Version der Software. Reichen Sie niemals Beiträge für diesen Zweig ein!",
|
||||
"updated": 1634821032083
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -97,7 +115,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Develop Branch: Presenta la versión actualmente en desarrollo. Envía contribuciones de código que afecten al código base.",
|
||||
"updated": 1628121811043
|
||||
"updated": 1628121811043,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Develop Branch: Enthält die Version, die sich derzeit in der Entwicklung befindet. Reichen Sie Beiträge ein, die die Codebasis betreffen.",
|
||||
"updated": 1634821041566
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -120,7 +144,13 @@
|
||||
{
|
||||
"language": "ES",
|
||||
"text": "Plugins-Docs Branch: Es la versión en la rama maestra más los últimos cambios en los Documentos y Complementos. Envía contribuciones de traducciones, mejoras en los docs, tutoriales y plugins, como minas de datos, Trading Systems, etc.",
|
||||
"updated": 1628121938452
|
||||
"updated": 1628121938452,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Plugins-Docs Branch: Enthält die Version im Master-Zweig plus die letzten Änderungen in den Docs und Plugins. Reichen Sie Beiträge zu Übersetzungen, Verbesserungen in den Docs, Tutorials und Plugins wie Data Mines, Trading Systems usw. ein!",
|
||||
"updated": 1634821050724
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
+3
-9
@@ -138,7 +138,7 @@
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "Change the host parameter for the IP address of the machine running the backend.",
|
||||
"text": "Change the host parameter for the IP address of the machine running the backend. If you use a reverse proxy you must manually add \"webSocketsExternalURL\": \"wss:\/\/mydomain.com:443\" config parameter.",
|
||||
"translations": [
|
||||
{
|
||||
"language": "ID",
|
||||
@@ -160,13 +160,7 @@
|
||||
},
|
||||
{
|
||||
"language": "FR",
|
||||
"text": "Changez le paramètre host pour l'adresse IP de la machine qui exécute le backend.",
|
||||
"updated": 1623958474738,
|
||||
"style": "List"
|
||||
},
|
||||
{
|
||||
"language": "FR",
|
||||
"text": "Changez le paramètre host pour l'adresse IP de la machine qui exécute le backend.",
|
||||
"text": "Changez le paramètre host pour l'adresse IP de la machine qui exécute le backend. Si vous utilisez un reverse proxy ajoutez manuellement \"webSocketsExternalURL\": \"wss:\/\/mydomain.com:443\" dans les paramètres de configuration ",
|
||||
"updated": 1623958474738,
|
||||
"style": "List"
|
||||
},
|
||||
@@ -231,4 +225,4 @@
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
+9
-5
@@ -25,7 +25,8 @@
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Ich hoffe, dieses Tutorial hat Ihnen gefallen! Möchten Sie Ihre Dankbarkeit zeigen, indem Sie dem Superalgos Repo einen Stern geben?",
|
||||
"updated": 1634247038916
|
||||
"updated": 1634247038916,
|
||||
"style": "Definition"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -50,7 +51,8 @@
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Benutzer, die vor Ihnen da waren, haben Zeit und Mühe in die Erstellung von Tutorials gesteckt, damit Sie eine bessere Erfahrung machen können! Ein Stern für unser Repo ist eine schöne Art, Danke zu sagen! Sterne verbessern die Platzierung in der Github-Suche. Je mehr Sterne, desto einfacher ist es für Entwickler, Superalgos zu finden und schließlich zu unterstützen! Einen Stern für das Projektarchiv zu vergeben, dient auch Ihren eigenen Interessen!",
|
||||
"updated": 1634247047379
|
||||
"updated": 1634247047379,
|
||||
"style": "Text"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -74,7 +76,8 @@
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Wenn Sie es noch nicht getan haben, gehen Sie bitte zu unserem Repository und klicken Sie auf den Stern-Button in der oberen rechten Ecke!",
|
||||
"updated": 1634247053562
|
||||
"updated": 1634247053562,
|
||||
"style": "Callout"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -91,8 +94,9 @@
|
||||
},
|
||||
{
|
||||
"language": "DE",
|
||||
"text": "Here's a link for your convenience! Thank you! ->github.com/Superalgos/Superalgos",
|
||||
"updated": 1634247097586
|
||||
"text": "Hier ist ein Link für Sie! Ich danke Ihnen!->github.com/Superalgos/Superalgos",
|
||||
"updated": 1634590878814,
|
||||
"style": "Link"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
host = 'localhost'
|
||||
}
|
||||
if (port === undefined) {
|
||||
port = global.env.CLIENT_WEB_SOCKETS_INTERFACE_PORT
|
||||
port = global.env.PLATFORM_WEB_SOCKETS_INTERFACE_PORT
|
||||
}
|
||||
|
||||
let messageCounter = 0
|
||||
|
||||
Loaded 100 of 144 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user