# Terminology

## APY

Annual Percentage Yield, as it is called, calculates the return of an investment over a twelve-month period based on compounding interests and returns within the same period. For example, if a bot has been operating for six months and has an absolute 25% return (starting capital is 1000 USD, end of six months is 1250 USD), the APY will be 56.25%.&#x20;

## Bot

A *bot* is a program which executes trades (such as buy or sell) based on the entry and exit conditions set by the user. The advantage of a bot is the ability to monitor market conditions on a 24/7 basis and consequently to start a *deal* when an entry condition is met. Please note that in StockHero's context, a bot is NOT a strategy (read below for the definition on *strategy*).

## Deal

A *deal* is created by a bot whenever entry conditions are met. A *deal* consists of a set of trades. Whenever a bot's entry condition is met for the first time, a *deal* will be created along with the first trade. You will see this newly created *deal o*n the Deals page under the **Open Deals** tab. You may view the trades contained in a *deal* by clicking on the eye icon.

A *deal* is completed when the bot's exit conditions are met or when the deal is *liquidated* by the user. A completed *deal* can be found under the **Completed Deals** tab.

A *deal* always consists of at least two trades: a buy and a sell trade. There may be multiple buy trades depending on whether the bot has been configured for **Extra Orders.**

A chronological order of how a bot creates a deal is illustrated below:

Time T: Bot monitors market signals

T + 1h: Bot's entry condition is met and creates a new *deal*. Bot executes a buy order in the newly created *deal*. This same *deal* can be found under the Open Deals tab.

T + 2h: Bot's exit condition is met and executes a sell order. The *deal* is now marked as Complete. This completed *deal* can be found under the Completed Deals tab.

## Portfolio

A *portfolio* is a collection of stocks linked to the user's broker's account. It is usually denominated in USD. The total USD portfolio value may fluctuate due to the differences in USD pricing for each of the underlying stocks.

## Liquidate

If a *deal* remains open, the user has the option to instruct the bot to ignore the exit conditions and execute a Market Sell order. This is known as *liquidation*. After a *deal* is liquidated, the *deal* completes (the completed *deal* is found under the **Completed Deals** tab), and the bot resets itself. The reset bot will then create a new *deal* based on the entry condition for the corresponding *Base order* amount.

## Filled

A buy or sell trade is considered *filled* if the entire quantity of the underlying stocks is fully bought or sold. For example, if the bot executes a buy order for 1 AAPL and only 0.3 AAPL is bought, this order is considered *partially filled.* It is only when the remaining 0.7 AAPL is also purchased that the buy trade will be considered *filled*.

## W/L Ratio

StockHero tracks all of the completed *deals* which result in profits or losses. If all of a user's *deals* are profitable, then the *W/L (Win/Loss) Ratio* is 100%. If, out of ten completed *deals*, only three are profitable, then the *W/L Ratio* is 30%.

## Bot Status = Waiting for Entry

A *bot* is waiting to create a new *deal* based on the entry conditions set. No trades have been executed yet. The bot is running actively.

## Bot Status = In Progress

A *bot* that has already created a *deal* will display the status as "In Progress". An Open Deal will be created. You will see this open *deal* on the Deals page. The bot is still actively monitoring the market, waiting to make the next trade.

## Fund Allocation

A user can set the maximum amount of capital made available to the bot to trade from. *Fund allocation* is an essential tool in risk management for any user. For example, a user may only want to allocate 10% of his capital to a bot if the bot's strategy is yet to be proven. Subsequently, the user can increase the *fund allocation* if the bot's strategy is good.

## Base Order Limit & Extra Orders

*The Base order limit* dictates how much of the allocated fund to use for making the first trade (when a *deal* is newly created by the bot). This is best illustrated through the following example:

If a user allocates 10,000 USD and sets the base order limit at 20%, the bot will utilize 2,000 USD (representing 20% of 10,000 USD) to execute the first order.

Extra Orders refers to the number of subsequent trades (after the first trade is made) that the bot will execute. The extra orders are divided equally from the remainder left after the base order limit is deducted from the allocated fund.

&#x20;                                                         Fund Allocation = Base Order + Extra Orders

Using the above example, if the user sets the base order limit at 20% and wants the bot to make two additional Extra orders, each of the extra orders will utilize 40% of the allocated fund, since after the base order is executed, only 80% of the allocated fund remains.

## Trading Frequency

A *bot* will acquire the market data at intervals defined by *trading frequency*.&#x20;

15m - Bot reads market data every 15 minutes

1h - Bot reads market data every 1 hour

4h - Bot reads market data every 4 hour

1D - Bot reads market data once a day

After a bot has acquired the data at each interval, it will process the same data and determine if entry or exit conditions are met. If conditions are met, a trade will be executed.

## Indicator

An indicator is a trade signal or value derived from complex algorithms based on the type of indicator used. These algorithms acquire market data such as volume, price, price-action, momentum, and so on, and subsequently produce a value or signal for traders as part of their decision-making process.&#x20;

## Take Profit

A user can configure the bot to close a deal if the profit hits a percentage of the allocated fund. A Take Profit exit condition has priority over Indicator-based exit conditions.

## Stop Loss

A user can configure the bot to close a deal if the loss hits a percentage of the allocated fund. Please note that Take Profit and Stop Loss have priority over indicator-based exit conditions.

## Strategy

A strategy is a pre-built model that determines when a bot should buy or sell. It is offered for rental on the Strategy Marketplace. From one strategy rental, a user can create up to eight bots.

Think of a strategy as a money-printing machine: each machine has its own unique design, and each “note” it prints represents a bot. Every bot is built using the model embedded within the strategy.

## Backtest

A user can test the efficacy of a bot (based on the parameters set) by running a backtest. This is a risk-free way for users to check that their bot's performance is acceptable. However, it must be noted that a good backtest result does not necessarily guarantee good forward-looking performance for the bot.
