stage 1: lastmonths → keep top
by the Rank-by metric → stage 2: re-run those on all data, rank there
split at VIX
decided by
→ best for VIX < x + best for VIX ≥ x = one portfolio
normal searches on the ticket’s full date range
Variations
every combination runs as its own strategy
faster on big date ranges; SL/target hits identical (highs/lows preserved), exit timing coarser. Verify winners at full 1-min.
test this many random combinations from the grid — the way to explore grids beyond the limit
pts from the sold strike (hedges follow the sold strike wherever each combination puts it)
| Parameter | From | To | Step |
|---|
AI sweep · AI Pro · AI++ — settings
Run nameoptional — leave blank for the automatic name (e.g. NIFTY_0DTE_0920)
Pro: top
AI Pro pooltop N single variations the AI Pro baskets are built from (2–15) · AI++ ignores it
max in basket
Max strategies in a basket1–10 · how many strategies your capital can run together (AI Pro, AI++, DUO)
max loss / day
Max loss per daywhole basket squared off for the day at this combined loss (₹, $ on US) · blank = off
Non-correlation filtertick it, then set the highest day-P&L correlation allowed between two members (−1 to 1) · off when unticked
by
Rank bymetric that picks the best variations and baskets
⤧ NoCorr Finder
basket of
Strategies per basket2–10 · the basket grows one strategy at a time until it holds this many
strategies · cover the
Cover the worst N daysat each step, the variation that earned most on the basket’s N worst days is added
worst days · start from the top
Start from the top N variationseach one starts its own basket → up to N baskets, ranked
variations
Profitable variations onlya variation that loses money overall can’t join a basket
NoCorr++ builds baskets that run every strategy every day — at 09:16 nobody knows what kind of day it is, so no member is switched on or off by the day type. The regimes (trend / volatile / range, read from the underlying after the close) are a report card and a guide for which losing days the next member must cover. Every basket is built on the first part of the date range and judged on the unseen rest.
tail = worstTail to cover (% of days)the basket’s worst N % of days (at least 3), each weighted by its loss, are what a new member must cover
% of days · judge on the lastJudge on the last (% of days)baskets are built on the earlier days and ranked on these unseen last N % · 0 = no out-of-sample check
% · lots per member up toMax lots per membercalmer members may run more lots so each adds similar daily risk · 1 = one lot each
· near-copies if corr >Near-copy limit (correlation)variations correlated above this count as the same strategy — only one of them can join
Cover the whole dayprefer members whose trading window adds coverage of the session
Allow hedges that lose a littlea slightly losing variation may join if it earns enough on the basket’s bad days
Pool — the AI ticket above with its variations, plus:
basket size and seeds come from the NoCorr row (basket of · start from the top)
Running sweep…
0%
Runs server-side; closing browser OK.
AI++ DUO — morning + afternoon
two strategies a day: the base strategy above is the AM strategy (with its variations); the PM strategy below enters after the AM one is flatPortfolio
your strategy baskets — create one, open it, run itPortfolio
Ranked by Return ÷ Max Drawdown — the best combos are the ones that make money smoothly, not just the biggest totals.
Running strategies…
0%
Total PE-CE OI Analysis
Gamma Detector
loading…
Run a backtest to see results here.
⬆️ Update the site — from any device
Pick either zip — btsite_vNNN.zip (the site zip) or makemyalgo_autodeploy_vNNN.zip (the autodeploy zip; the server takes the site zip out of it) and press Install. The server checks the zip (the app.py version inside must match its name), backs up backtest.db, runs the same update.sh as update_site.bat in the background, and restarts the site once (about a minute). The script copies only code files (*.py, requirements.txt, static/, the module code) — it never opens config.json, any database (backtest.db, aidisc.db, lab_auto.db, research.db), tokens, data folders or uploads; running sweeps save their finished combos and resume by themselves. No server / SSH password is involved, so this is the way to update from a phone.
On a phone: save the zip from the chat to the Files app (Share → Save to Files) and pick it here. If the file picker shows a folder instead of a zip, the phone has unzipped it — go back to the chat and save again, or pick the btsite_vNNN.zip inside the folder.
✎ Design mode
Design mode lets the super admin reshape the site for every user: switch it on, then click any outlined element (tabs, boxes, buttons) to hide, resize or reorder it, drag tabs to reorder them, and press Save for everyone in the bar that appears at the top. Reset all restores the original layout. The mode stays on while you move between tabs; press Exit in the top bar (or the button here) to leave it.
Owner dashboard
loading…
🇮🇳 India — Telegram (@nfo_data)
loading…
User Manager
💾 Data view — what is using the server disk (v400)
Every data folder, the site’s own files and the usual system hogs, as a chart and as a list; below them, junk and unfinished downloads that can be deleted. The scan runs in the background and is reused for 15 minutes — Rescan forces a new one.
loading…
Configure website
loading…
Each section keeps its own Save; this one saves every section at once.
Email — info@makemyalgo.com
loading…
💼 Live account management
loading…
Search every user's backtests — best of the best (unsaved runs included)
loading…
loading…
loading…
loading…
loading…
Stress test
vary 1 to 3 parameters of one strategy and see every result as a heatmap — a good setting sits on a wide green plateau; a lonely bright cell is luck (overfit)No strategy loaded yet. Press Stress on any result row (AI sweep, AI Pro / AI++ basket members, AI Discovery, My strategies), or on the Build ticket, or pick one above.
loading…
loading…
loading…
loading…
loading…
loading…
loading…
loading…
loading…
📈 Option Indicator Lab — indicators drawn on the option price
How the Option Indicator Lab works
The Indicator Lab draws indicators on the underlying; this one draws them on the option premium itself. Every trading day at the select minute the strikes are picked from the nearest (or next) expiry — a single CE / PE, the ATM straddle (CE + PE premium), an OTM strangle, or your own legs with + / − weights (a spread = long leg − short leg). That structure's 1-min OHLC is the weighted sum of its legs' candles and stays on those strikes for the day; a fresh series starts every day (tick carry across days to chain the days into one continuous series instead). The indicator legs vote on every candle of that series, exactly like the Indicator Lab: +1 = the premium is expected to rise → BUY the structure, −1 → SELL it (contrarian flips that; you can also allow only buys or only sells). Entries and exits happen at candle close; a trade closes on the opposite (or any) signal, at the square-off time, or on the SL / target % of the entry premium checked minute by minute. Results show every leg's in → out price, P&L at lot size × lots, and a per-day chart of the premium with the indicator lines and entry / exit markers drawn on it. Note: for multi-leg structures the candle high / low is the sum of the legs' highs / lows (an upper bound), so ATR-based indicators run a little wider than on a single option.
💾 Saved runs — every finished test is kept here (open it later, rename, star, delete)
loading…
📊 Option chart — one expiry at a time, TradingView-style (candles, zoom / pan, the lab's indicators drawn on it)
Scroll to zoom, drag to pan, double-click the time axis to reset. The straddle is CE + PE at the same strike. Days are shown back to back (no overnight gap); higher-TF lines step onto the chart once their candle closes.
📐 Indicator Lab — indicator combinations → option structures
How the Indicator Lab works
Every indicator × timeframe is one voting leg (+1 / −1 / 0). Signals are read on candle close and executed at the next base candle's open; higher timeframes count only once their candle has closed. For each LONG and SHORT signal you say what to sell / buy (Build-style legs) — the legs are opened at the signal's entry minute from the nearest-expiry chain and closed at the exit minute. Export the underlying signals as a TestKaro file.
🧪 Lab — rule-based signal tester
How the Rule Lab works
Every trading day, at each check time, the conditions are tested on that minute's parameters (VIX vs previous close, PCR, spot move, straddle premium, DTE …). When all hold, an ATM straddle of the nearest expiry is sold / bought at that minute and squared off at the exit time or on SL / target of the combined premium. Export the signals as a TestKaro file or the full trade details.
🔬 Research — positional strategies: signals on the continuous future, trades in options
How the Strategy Builder works
Pick the symbol whose continuous future is built (Admin → Data → Futures). Entry rules are computed on that future, each on its own timeframe (15-min … daily); a signal fires when the rules agree (or vote) and is read on candle close — the entry is the next candle's first minute (next morning when the signal is the day's last candle). Exits on the future: opposite signal, max hold days, stop / target / trailing stop in points or % — walked on the 1-minute candles. Options: for a LONG and a SHORT signal you define the legs (sell / buy, CE / PE, ATM / OTM n / ITM n / premium ≈, lots), the expiry (weekly, next weekly, monthly, next monthly), the minimum DTE at entry, what happens when the position outlives the option (close or roll), and an option stop / target in % of the total entry premium walked minute by minute across the days held. Every finished run is kept under Saved runs; strategies save with a name and reopen in the form.
💾 My strategies & saved runs
loading…
loading…
loading…
CAS — Indicative Close dashboard
logs into Zerodha automatically every weekday 08:45 IST · live during the closing session Open full screenloading…
loading…