Creating an algo¶
Using Streak’s intuitive interface and elegant design creating an algo is as simple as typing out technical indicators, keying in stop loss and target profit percentage and selecting the stocks you want to trade with.
Some of the most used technical indicators like Supertrend, MACD, RSI, Momentum indicator, Moving Average etc., are available on our platform.
Scrip/Instrument Select the stocks, stock futures or currency futures from NSE. You can add upto maximum of 20 instruments or you can also select custom built baskets.
- 1 minute runs checks for signals on min candle with maximum allowed window of 30 days
- 3 minute to 30 minutes checks for signals respective candle based on data availability with maximum allowed window of 90 days.
- 1 hour candle checks for signals on an hourly candle with maximum allowed window of 1 year based on data availability.
- 1 day candle checks for signals on a day candle with maximum allowed window of 5 years based on data availability.
Position Allows users to define the entry type (i.e. buy/sell) and the quantity of stocks to be used by the algo.
Quantity When you add quantity, we account for a single stock and NOT for the lot size EXCEPT for Currency Futures (for currency future it will consider 1 lot).
If you would like to trade Bank Nifty then add quantity as 40.
Indicator Each indicator condition in a trading algo has 3 parts:
- Indicator1 - Technical indicator such as RSI, MOM, Supertrend etc.
- Comparator - A logical comparator such as higher than, lower than etc.
- Indicator2 - Something to compare Indicator1 with, a value such as number, OHLCV etc.
Stop loss & Target profit percentage It is mandatory to enter stop loss and target profit percentage as a part of creating an algo.
Advanced section (Optional) There are 4 advanced options available to users:
- Chart type: you can use Heikin-Ashi Chart or Candlestick chart to change the candle type.
- Order type: you can change order type from MIS to CNC/NRML. This will change the backtest results as well
- Enter and Exit trade time can also be customized as per requirements, by default it is set from 9:00 AM to 5:00 PM
Given trade time is only inclusive of candle close time. example If trade time is given between 11:15 AM to 03:00 PM and for a 15 minute candle interval lets say for 11:00 AM candle if its close at 11:15 AM meets the entry condition, trade will be executed. Similarly if for 03:00 PM candle its close time 03:15 PM meets the condition but since the trade time given was only till 03:00 PM trade will not happen.
- Algo name Give a unique name to the algo and click on run BACKTEST
Currency futures on Streak You can create, backtest and deploy currency futures in Streak. Each quantity corresponds to 1 lot size ie, 1000. MIS algos will be stopped at 4:30 PM and open positions, if any will be squared off.
Backtest is run keeping intraday orders (MIS) as default. You can change it to CNC/NRML from advanced section.
- Add scrips of your choice like INFY
- Select candle interval as 30 minutes
- Take a Buy position
- Enter quantity as 100
- In the Technical indicator field type RSI and you get a drop down that consists of RSI and select it ( leave the default value)
- After selecting the Technical indicator, We know that if RSI is in oversold territory if it is below 30 and you would want to buy the stock when RSI crosses above 30, so select crosses above in the comparator field
- Now in second indicator field select Number and enter 30
- For Exit condition (Optional): RSI Crosses below 70 you can exit the condition
- Enter Stop loss as 0.5% and Target profit as 1%
- Give this algo a unique name and run Backtest
Streak has made it simple for you, usually the process of creating similar algo on traditional platforms would have taken about 2 hours depending on your coding skills and data availablity.
- Add sample basket Bank Nifty - Sample Basket
- Choose time frame as 10 mins
- Select your position Buy
- Enter quantity as 1
- In technical indicator field search of supertrend and select the Supertrend indicator from dropdown and click ok with default values as it is.
- Choose crosses below in comparator field
- Now in second indicator field Select Close
- Add the Stop Loss and Target Profit % of 0.5 and 1 respectively.
- Give this algo a unique name and run Backtest
Points to remember¶
- The advanced feature allows you to select different charts.
- You can add up to 5 entry and 5 exit conditions.
- You can select different time frame to enter and exit a stock in the advance section.
- The limit of every basket is 20 and you can create algo for upto 20 stocks in one go.
- The backtest limit per day for basic plan is 200 and you get 25 live deployments at any given time
More on Create¶
Entry condition forms a logical point to generate an entry signal to take a position. An entry condition can comprise of one or more individual conditions which must be logically "true" to generate a signal. An individual condition is created by comparing one value/parameter/indicator with another value/parameter/indicator.
ex: 20 SMA (indicator) higher than (>) 10 SMA. Here, the condition will be logically true when the value of '20 SMA' is more than the value of '10 SMA'.
Upto 3 conditions can be combined together to generate a trading signal. The generation of a trading signal is determined by the combined logical combination of the conditions being true for the current candle and it being false in previous candle.
Except with AT price indicator no other entry condition is allowed
Combining entry conditions (with "AND"/"OR")¶
When a trading algo has multiple conditions, these conditions are combined together using "AND"/"OR" to collectively form a single algo with a single entry/exit point event. The output of the combination of entry/exit conditions is based on digital logic operations.
Algo logic is calculated in the order specified by the user with "AND" having higher preference over "OR"
1. logic1 AND logic2 OR logic3 AND logic4 will be calculated as (logic1 AND logic2) OR (logic3 AND logic4)
2. logic1 OR logic2 AND logic3 will be calculated as logic1 OR (logic2 AND logic3)
Exit condition defines the point at which a position can be exited. An exit condition is defined by a target stop loss percentage and a target take profit percentage. An exit signal similar to the entry signal can also be entered and is optional. After the algo enters a position, the target stop loss price and the target take price is calculated on the average price of the entry order.
1. During a backtest, if the close price crosses either of the exit prices point in the current candle or the exit signal is met, the hypothetical exit order is placed on the close price of the next candle.
2. For live algos (after an algo is deployed), if the the algo has entered a position in the market and the LTP (last traded price) crosses either of the exit prices point or the exit signal is met, an actionable alert is sent to the user on which they can manual click on "buy/sell" to place a market order in the exchange.
AT price indicator is not allowed in exit condition