Scenarios #
Scenarios are perhaps the most crucial parts of the app. They’re your saved algorithms, designed to trade your assets very efficiently. You can add as many as scenarios you like with only a few clicks. The ability to design, backtest, modify, run, and stop your scenarios helps you to get assured of the best results.
Video Tutorials #
Creating a new trading scenario #
Navigating the Block Builder Menu #
The 4 block types in Arrow Algo #
Linking Blocks Creating Groups and Managing Scenarios #
Walking through a live example scenario in Arrow Algo #
Add a scenario #
- Click on the
Add Scenario
button on either theDashboard
orScenarios
page, fill in the fields of theScenario Information
page with the required data as explained below, and then click on theCreate
button routing you to the scenario editor environment.- Scenario Information
Scenario name
: Choose a name for your scenario. (required)Scenario description
: Explain your scenario’s cons and pros, how it would be most efficacious, and – if you wish – how it works. (required)Warm up
: Scenarios often require historical data to initiate operations. However, waiting for weeks to see your strategy in action can be inconvenient. Consider a situation where your scenario needs two weeks of data, but you’re eager to enter the market immediately. This is where our “Warm up” feature comes in. It allows you to request historical data from the past days or weeks, enabling your scenarios to start trading within seconds of activation. For instance, think of indicators like a moving average, which relies on past data points to calculate averages. With our Warm up feature, scenarios can now request data for up to 20 days, providing ample historical information for most strategies. Simply input your desired time frame (in hours) to get started.Accounts for trade
: As you may know, premium users can have multiple accounts from various brokers; some brokers will also allow you to input instructions via multiple API inputs. In this field, we show you all of your linked accounts in order for you to choose which to include in the scenarios. You’re allowed to select how many accounts you want but are limited to solely one account from each broker. Please note that you need to select at least one exchange account since your available data watchers in the graph will get specified based on the selected accounts of the list. (required)
- Scenario Information
Scenario Editor #
- The blueprint system enables you to design complex algorithms by only adding and connecting blocks. This environment presents many useful tools to help you manage your algorithms so easily.
Definitions #
- Blueprint The Scenario editor environment.
- Block/Node Indicators and other functions are available as blocks in the blueprint. Each block can connect to others based on its input and output connections. Some of these input/output entries have rules that must be considered when connecting blocks. You can find a complete list of Blocks with explanations in the Block Library.
- Connection/Link Lines that connect blocks. They hook up one block’s output entry to other’s input entry.
- Group Customisable squares that get used to categorise the blocks in order to manage elaborate scenarios much easier. If a user moves a group, all blocks that are totally or partially in the group’s area will move simultaneously.
Top-bar tools #
- Items from left to right are described below:
Add Item
Shows a search box that includes all available blocks and limits the items as you type. When you find your intended block, click on it to create a block of that type and attach it to the blueprint page. Please note that If only one item has remained in the search box, you can select it by pressing theEnter
button. You can alternatively open the search box by double-clicking on an empty space in the blueprint environment.Zoom in
Zooms in on the blueprint environment.Zoom out
Zooms out on the blueprint environment.Reset zoom
Resets the zoom level to the default value.Multi-select
Enables the user to select multiple blocks by simply clicking on them one by one.Select all
Selects all blocks of the scenario.Save
Saves the scenario. Please note, if you attempt to save a running scenario, the app will restart the scenario to get run based on the newly saved data.Exit
Exits you from the scenario editor environment. Please note, you’ll get a prompt notification to save the scenario if you attempt to exit without saving your last modifications.
Actions #
Blueprint
You can pan over the blueprint by dragging the empty space. Clicking on it does nothing, and a double-click opens the search box. You can close the search box at any moment by pressing theescape
button. Right-clicking on the blueprint’s empty space gives you two options:Add Node
andAdd Group
. The first option gives you all the blocks that are also available through the search box (but as a list), and the second option creates a group with the default name ofGroup
.Block/Node
You can move the blocks by dragging, can select them by clicking, and open the properties panel (which enables you to modify the block properties) by double-clicking on them. Doing a right-click on a block gives you a number of options. The options from top to bottom areTitle of the block
,Help
,Properties
,Resize
,Collapse
,Colors
,Clone
, andRemove
. let’s review their functionalities:Help
provides a brief explanation of the block functionality; it may also include links to more extended resources.Properties
allows you to edit the block properties separately without needing to enter the properties panel.Resize
resets the block dimensions to their default values.Collapse
is a toggle for expanding/collapsing the block. There is a circular button next to the block title that can be used as an alternative.Colors
offers a list of available colors from which to choose. ‘No color’ is the default option.Clone
generates an exact copy of the block, representing the same parameters and values.Remove
simply removes the block.
- If you hold the cursor around the bottom right corner of a block, you’ll see an arrow icon that can be used for resizing the block to any desirable size.
Connection/Link
If you look at the lines that connect the blocks, you’ll notice a spot in the middle of them. Click on them and you see a menu containing two options:Add Node
andDelete
. The first option is the same as theAdd Node
option of theBlueprint
section, but it places the newly created node in the route of the two connected blocks, and the second option removes the connection line entirely.Group
The only way to add a group is to use theAdd Group
option, which is explained in theBlueprint
section. When the group is created, you can move it by dragging any portion of the shape except the right-bottom corner (a filled triangle), which is responsible for resizing the group. Right-click on the group, and you have three options:Add Node
,Add Group
, andEdit Group
. The first two are identical with the same options that are described in theBlueprint
section, but the third option itself provides four sub-options:Title
,Color
,Font size
, andRemove
. All items are somewhat obvious: the default title for each group isGroup
that you can modify it using the first item, the second item is for changing the color of the rectangle, the third one handles the font size of the group’s title, and the last one removes the group entirely.
The Building Blocks #
- The Block Builder Blueprint Engine is a powerful tool designed for crafting personalized trading strategies through a visual and modular approach. Comprising four main block types—Data Watchers, Indicator Blocks, Maths Blocks, and Action Blocks—the engine empowers users to seamlessly design strategies tailored to their unique preferences and market analysis. Data Watchers provide essential market data, while Indicator Blocks offer a diverse range of technical indicators. Maths Blocks enable precise condition setting, and Action Blocks automate trade execution. Understanding these blocks is crucial for harnessing the engine’s capabilities, allowing users to navigate the subsequent sections effectively and harness the full potential of this innovative strategy-building platform. For a more in depth analysis of the block types, check out our Block Library.
Backtesting and Running #
- When you go to the
Scenarios
page, you’ll see buttons nested in theActions
column, which are described below.
Backtest List #
- It opens a page showing a list of the user’s backtests; They may be in a queue, running, stopped, or completed. You can run a fresh one by clicking on the
New backtest
button; when you press the button, a modal will get shown asking you to specify a date range and enter your starting asset balances. Press theRun the backtest
button, and it’ll get added to the list, then you can check its status. For free account users, your backtest may get put in a queue and take some time to get started. You can click on the item and review its real-time status via a chart, a list of signals, and an information box. For a full guide on Backtesting see the Backtest section.
Run/Stop #
- When you run a scenario,
data watchers
get signals periodically and push them into the subsequent blocks. They process the caught signals, and if all the conditions are satisfied, would trigger theBUY
/SELL
blocks to send signals to the user’s exchanges.
Three-dot Menu #
Edit
Opens the scenario editor environment containing the scenario content.Delete
Shows an alert modal; Confirm the deletion by pressing theOK
button, and the scenario will get removed.Orders
Opens a page showing notification messages of the user’s placed orders. If sent (BUY/SELL) signals have been received by the exchange, and then some orders have been placed based on the signals, the app will print notification messages on the orders page, informing the user about their placed orders.Copy
Opens a modal; Fill in the name field, and after pressing theClone
button, you will get redirected to the scenario editor containing the newly cloned scenario content.Setting
Allows you to edit fields on theScenario Information
page. (look at theAdd Scenario
section)Logs
Opens a page showing a history of the user’s logs. Running, stopping, and editing a scenario will put a relative notification message on the logs page.Debug logs
Opens a page showing the input and output data of the scenario’s blocks. Each row displays a block [Action
] that got some data [Inputs
] and emitted the resultant data [Result
] at a specific time [Time
].