diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/fee-structure.json b/Projects/Superalgos/Schemas/Docs-Nodes/fee-structure.json index 21504e404..14de882ee 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/fee-structure.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/fee-structure.json @@ -20,45 +20,15 @@ "style": "Important", "text": "The accuracy of the internal account-keeping depends on this parameter. Make sure you obtain the correct fee structure from the exchange corresponding to the tier of your account." }, - { - "style": "Text", - "text": "To illustrate how fees affect your bottom line, take a look at the image below." - }, - { - "style": "Gif", - "text": "GIFs/Superalgos/Docs/inner-foder/trading-simulation-fees-fails.gif" - }, - { - "style": "Text", - "text": "The trade hits the take profit target above the Position Rate level, however, due to fees, the trade has a negative 0.32% ROI." - }, - { - "style": "Block", - "text": "Configuring" - }, { "style": "Title", - "text": "Configuring Fee Structure" + "text": "Fee Structure Configuration", + "updated": 1609676648252 }, { - "style": "Text", - "text": "Select Configure Fee Structure on the menu to access the configuration." - }, - { - "style": "Text", - "text": "{" - }, - { - "style": "Text", - "text": "\"maker\": 0.15," - }, - { - "style": "Text", - "text": "\"taker\": 0.25" - }, - { - "style": "Text", - "text": "}" + "style": "Subtitle", + "text": "Properties", + "updated": 1609676653644 }, { "style": "List", diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/forward-testing-session.json b/Projects/Superalgos/Schemas/Docs-Nodes/forward-testing-session.json index 71102b0c0..bde3624c5 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/forward-testing-session.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/forward-testing-session.json @@ -14,55 +14,8 @@ }, { "style": "Important", - "text": "Running a live session requires the setup of a key reference at the market reference. It also requires a live data feed, meaning that the corresponding sensor bot, along with all indicators used by the referenced trading system, must be up and running. Finally, a live session also requires at least 48 hours of historic market data. Bear in mind that the trading system may require even more historic market data to properly analyze the market." - }, - { - "style": "Block", - "text": "Configuring" - }, - { - "style": "Title", - "text": "Configuring Forward Testing Session" - }, - { - "style": "Text", - "text": "Select Configure Session on the menu to access the configuration." - }, - { - "style": "Text", - "text": "{" - }, - { - "style": "Text", - "text": "\"folderName\": \"Session-Name\"," - }, - { - "style": "Text", - "text": "\"balancePercentage\": 1" - }, - { - "style": "Text", - "text": "}" - }, - { - "style": "List", - "text": "folderName allows you to set a significant name to the folder in which the data products—and logs—generated by the session are stored. If left blank, the system names the folders with the session id. This may be handy when you intend to consult the raw data generated by the session, as, otherwise, the folder would be hard to identify." - }, - { - "style": "List", - "text": "balancePercentage is a number defining the percentage of the initialBalance specified in the base aset configuration that will be used for trading. For instance, \"balancePercentage\": 1 means that 1% of your balance will be made available. Just like the initialBalance is scaled down, the minimumBalance and maximumBalance are also scaled down accordingly (see base asset)." - }, - { - "style": "Text", - "text": "Your base asset is USDT and your initialBalance is USDT 10,000." - }, - { - "style": "Text", - "text": "If you set up your forward-testing session with \"balancePercentage\": \"1\", then USDT 10,000 * 1% = USDT 100. This is the balance that will be available to your forward-testing session." - }, - { - "style": "Important", - "text": "You need to take this into account at the time of defining your positionSize formula. If the formula is a constant, you may easily run out of balance, as only a fraction of the balance will be available for the strategy to use. It may be a good idea to set up your positionSize as a function of your available balance instead." + "text": "Running a live session requires the setup of a key reference at the Task. It also requires a live data feed, meaning that the corresponding sensor bot, along with all indicators used by the referenced trading system, must be up and running. Finally, a live session also requires at least 48 hours of historic market data. Bear in mind that the trading system may require even more historic market data to properly analyze the market.", + "updated": 1609673944485 }, { "style": "Block", @@ -79,6 +32,54 @@ { "style": "Text", "text": "To stop a backtesting session, select Stop on the menu." + }, + { + "style": "Block", + "text": "Configuring", + "updated": 1609674120399 + }, + { + "style": "Title", + "text": "Forward Testing Session Configuration", + "updated": 1609674133114 + }, + { + "style": "Subtitle", + "text": "Properties", + "updated": 1609674160126 + }, + { + "style": "List", + "text": "folderName allows you to set a significant name to the folder in which the data products—and logs—generated by the session are stored. If left blank, the system names the folders with the session id. This may be handy when you intend to consult the raw data generated by the session, as, otherwise, the folder would be hard to identify.", + "updated": 1609674163788 + }, + { + "style": "List", + "text": "balancePercentage is a number defining the percentage of the initialBalance (as specified in the Session Base Asset and/or Session Quoted Asset configuration) that will be used for trading. For instance, balancePercentage set to 1 means that 1% of your balance will be made available. Just like the initialBalance is scaled down, the minimumBalance and maximumBalance are also scaled down accordingly (see base asset).", + "updated": 1609674550102 + }, + { + "style": "Text", + "text": "Let's put this in numbers, for clarity. Let's say your Session Quoted Asset is USDT and your initialBalance is USDT 10,000.", + "updated": 1609674600781 + }, + { + "style": "Text", + "text": "If you set up your forward-testing session with balancePercentage set to 1, then:", + "updated": 1609674267939 + }, + { + "style": "Javascript", + "text": "USDT 10,000 * 1% = USDT 100", + "updated": 1609674387594 + }, + { + "style": "Text", + "text": "This is the balance that will be available to your forward-testing session." + }, + { + "style": "Important", + "text": "You need to take this into account at the time of defining your positionSize formula. If the formula is a constant, you may easily run out of balance, as only a fraction of the balance will be available for the strategy to use. It may be a good idea to set up your positionSize as a function of your available balance instead." } ] } \ No newline at end of file diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/heartbeats.json b/Projects/Superalgos/Schemas/Docs-Nodes/heartbeats.json index cb4709600..5a50f5f44 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/heartbeats.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/heartbeats.json @@ -18,27 +18,13 @@ }, { "style": "Title", - "text": "Configuring Heartbeats" + "text": "Heartbeats Configuration", + "updated": 1609676752786 }, { - "style": "Text", - "text": "Select Configure Slippage on the menu to access the configuration." - }, - { - "style": "Text", - "text": "{" - }, - { - "style": "Text", - "text": " \"date\": true," - }, - { - "style": "Text", - "text": " \"candleIndex\": false" - }, - { - "style": "Text", - "text": "}" + "style": "Subtitle", + "text": "Properties", + "updated": 1609676758182 }, { "style": "List", diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/live-trading-session.json b/Projects/Superalgos/Schemas/Docs-Nodes/live-trading-session.json index 5e87561f3..24fc0c6f1 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/live-trading-session.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/live-trading-session.json @@ -14,35 +14,8 @@ }, { "style": "Important", - "text": "Running a live session requires the setup of a key reference at the market reference. It also requires a live data feed, meaning that the corresponding sensor bot, along with all indicators used by the referenced trading system, must be up and running. Finally, a live session also requires at least 48 hours of historic market data. Bear in mind that the trading system may require even more historic market data to properly analyze the market." - }, - { - "style": "Block", - "text": "Configuring" - }, - { - "style": "Title", - "text": "Configuring Live Trading Session" - }, - { - "style": "Text", - "text": "Select Configure Session on the menu to access the configuration." - }, - { - "style": "Text", - "text": "{" - }, - { - "style": "Text", - "text": "\"folderName\": \"Session-Name\"" - }, - { - "style": "Text", - "text": "}" - }, - { - "style": "List", - "text": "folderName allows you to set a significant name to the folder in which the data products—and logs—generated by the session are stored. If left blank, the system names the folders with the session id. This may be handy when you intend to consult the raw data generated by the session, as, otherwise, the folder would be hard to identify." + "text": "Running a live session requires the setup of a key reference at the Task. It also requires a live data feed, meaning that the corresponding sensor bot, along with all indicators used by the referenced trading system, must be up and running. Finally, a live session also requires at least 48 hours of historic market data. Bear in mind that the trading system may require even more historic market data to properly analyze the market.", + "updated": 1609673958673 }, { "style": "Block", @@ -59,6 +32,26 @@ { "style": "Text", "text": "To stop a backtesting session, select Stop on the menu." + }, + { + "style": "Block", + "text": "Configuring", + "updated": 1609673992204 + }, + { + "style": "Title", + "text": "Live Trading Session Configuration", + "updated": 1609674010854 + }, + { + "style": "Subtitle", + "text": "Properties", + "updated": 1609674018276 + }, + { + "style": "List", + "text": "folderName allows you to set a significant name to the folder in which the data products—and logs—generated by the session are stored. If left blank, the system names the folders with the session id. This may be handy when you intend to consult the raw data generated by the session, as, otherwise, the folder would be hard to identify.", + "updated": 1609674032582 } ] } \ No newline at end of file diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/session-base-asset.json b/Projects/Superalgos/Schemas/Docs-Nodes/session-base-asset.json index 9b7f0e42f..ab1df0c03 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/session-base-asset.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/session-base-asset.json @@ -18,31 +18,13 @@ }, { "style": "Title", - "text": "Configuring Session Base Asset" + "text": "Session Base Asset Configuration", + "updated": 1609674870532 }, { - "style": "Text", - "text": "Select Configure Base Asset on the menu to access the configuration." - }, - { - "style": "Text", - "text": "{" - }, - { - "style": "Text", - "text": "\"initialBalance\": 0.001," - }, - { - "style": "Text", - "text": "\"minimumBalance\": 0.0001," - }, - { - "style": "Text", - "text": "\"maximumBalance\": 0.1" - }, - { - "style": "Text", - "text": "}" + "style": "Subtitle", + "text": "Properties", + "updated": 1609674879122 }, { "style": "List", diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/session-quoted-asset.json b/Projects/Superalgos/Schemas/Docs-Nodes/session-quoted-asset.json index e54ee6d14..f6db46801 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/session-quoted-asset.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/session-quoted-asset.json @@ -10,7 +10,21 @@ }, { "style": "Text", - "text": "The parameter allows defining an initial balance of the corresponding asset, which may be used for trading with the corresponding trading system and trading session. Please see the configuration." + "text": "The parameter allows defining an initial balance of the corresponding asset, which may be used for trading with the corresponding trading system and trading session.", + "updated": 1609675091584 + }, + { + "style": "Title", + "text": "Session Quoted Asset Configuration", + "updated": 1609675107102 + }, + { + "style": "Subtitle", + "text": "Properties" + }, + { + "style": "List", + "text": "initialBalance is the amount of capital you wish to allocate to the trading system." } ] } \ No newline at end of file diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/slippage.json b/Projects/Superalgos/Schemas/Docs-Nodes/slippage.json index ab415f624..4c7575105 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/slippage.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/slippage.json @@ -22,47 +22,32 @@ }, { "style": "Title", - "text": "Configuring Slippage" + "text": "Slippage Configuration", + "updated": 1609676424004 }, { - "style": "Text", - "text": "Select Configure on the menu to access the configuration." + "style": "Subtitle", + "text": "Properties", + "updated": 1609676430132 }, { - "style": "Text", - "text": "{" + "style": "List", + "text": "positionRate is the slippage value applied to the rate of all market orders throughout the position, expressed as a percentage (for example, 0.1 means 0.1%).", + "updated": 1609676495674 }, { - "style": "Text", - "text": "\"positionRate\": 0.1," - }, - { - "style": "Text", - "text": "\"stopLoss\": 0.2," - }, - { - "style": "Text", - "text": "\"takeProfit\": 0.3" - }, - { - "style": "Text", - "text": "}" - }, - { - "style": "Text", - "text": " positionRate is the slippage value applied to the rate of all market orders throughout the position, expressed as a percentage (i.e.:* 0.1 means 0.1%)." - }, - { - "style": "Text", - "text": " stopLoss is the slippage value applied to the stop loss target defined by the formulas of each stop loss phase in the manage stage of the trading system, expressed as a percentage (i.e.: 0.2 means 0.2%). The slippage value is applied to the value resulting from the corresponding stop loss formula, and the actual stop loss target is the resulting number. For example, if the stop loss formula results in 1000 and the stopLoss slippage value is 0.2, then the resulting stop loss target is 1000 ± 1000 0.2 / 100. Read below for an explanation on when the slippage is added or subtracted." + "style": "List", + "text": "stopLoss is the slippage value applied to the stop loss target defined by the formulas of each stop loss phase in the manage stage of the trading system, expressed as a percentage (for example, 0.2 means 0.2%). The slippage value is applied to the value resulting from the corresponding stop loss formula, and the actual stop loss target is the resulting number. For example, if the stop loss formula results in 1000 and the stopLoss slippage value is 0.2, then the resulting stop loss target is 1000 ± 1000 0.2 / 100. Read below for an explanation on when the slippage is added or subtracted.", + "updated": 1609676508652 }, { "style": "List", "text": "takeProfit works similarly as the stopLoss setting, but affecting the take profit target instead of the stop loss target." }, { - "style": "Text", - "text": "{% include note.html content=\"If the slippage parameter is left empty or detached both from your session and your trading system, slippage is not computed during simulations.\"%}" + "style": "Note", + "text": "If the slippage parameter is left empty or detached both from your session and your trading system, slippage is not computed during simulations.", + "updated": 1609676526540 } ] } \ No newline at end of file diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/snapshots.json b/Projects/Superalgos/Schemas/Docs-Nodes/snapshots.json index 15ff3437f..4e78fdc8a 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/snapshots.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/snapshots.json @@ -18,27 +18,13 @@ }, { "style": "Title", - "text": "Configuring Snapshots" + "text": "Snapshots Configuration", + "updated": 1609676701303 }, { - "style": "Text", - "text": "Select Configure Slippage on the menu to access the configuration." - }, - { - "style": "Text", - "text": "{" - }, - { - "style": "Text", - "text": " \"strategy\": true," - }, - { - "style": "Text", - "text": " \"position\": true" - }, - { - "style": "Text", - "text": "}" + "style": "Subtitle", + "text": "Properties", + "updated": 1609676706067 }, { "style": "List", diff --git a/Projects/Superalgos/Schemas/Docs-Nodes/time-frame.json b/Projects/Superalgos/Schemas/Docs-Nodes/time-frame.json index f87b16fed..32b9ae05b 100644 --- a/Projects/Superalgos/Schemas/Docs-Nodes/time-frame.json +++ b/Projects/Superalgos/Schemas/Docs-Nodes/time-frame.json @@ -18,63 +18,69 @@ }, { "style": "Text", - "text": "In the context of live sessions, that is, paper trading, forward testing, and live trading, you should run the session on the 01-min time frame so that the trading bot reacts fast when the price tags the take profit or stop loss targets. Remember that stop and take profit orders are not placed at the exchange after the take position event, that is, once you enter the position. Instead, the trading bot checks the current price upon each execution cycle and determines whether targets have been hit or not. If targets are hit, only then orders are placed. That is why running live trading sessions at the 01-min time frame is recommended. Learn more about the management of take profit and stop loss targets." + "text": "In the context of live sessions, that is, paper trading, forward testing, and live trading, you should run the session on the 01-min time frame so that the trading bot reacts fast when the price tags the take profit or stop loss targets.", + "updated": 1609676121406 + }, + { + "style": "Important", + "text": "Remember that stop and take profit orders are not placed at the exchange after the take position event, that is, once you enter the position. Instead, the trading bot checks the current price upon each execution cycle and determines whether targets have been hit or not. If targets are hit, only then orders are placed. That is why running live trading sessions at the 01-min time frame is recommended. Learn more about the management of take profit and stop loss targets." }, { "style": "Text", "text": "If for whatever reason you don't need to minimize the potential for slippage when hitting stop or take profit targets, you may choose whatever time frame you like, taking into account the explanations below." }, { - "style": "Text", - "text": "