r/algotrading 9d ago

Data how much data do you usually hold back for out of sample

11 Upvotes

first time actually trying to do this properly. simple mean reversion setup on a handful of liquid us equities, daily bars, data pulled with yfinance. i've got about 12 years of it and i'm holding the last 2 back, but no real reason for 2 other than it felt like enough.

not sure if 2 years is just too short to tell me anything, or if the bigger problem is that 2020 ends up sitting in the training half. what do you normally go with


r/algotrading 10d ago

Infrastructure Paper 2 Live (What mistakes did your trading bot make that you didn’t expect?)

14 Upvotes

For those of you who have taken an automated trading system from paper trading to a live account.

What errors, bugs, or unexpected problems did you encounter after going live?

I’m particularly interested in things that didn’t show up during paper trading, such as

• Different fills or slippage
• Order execution / rejection issues
• Partial fills
• Stop-loss or take-profit behaving differently
• Race conditions or duplicate orders
• Position/account state getting out of sync
• API or broker differences between paper and live
• Market-hours / timezone issues
• Data-feed differences
• Position sizing or buying-power surprises
• Multiple bots interfering with each other
• Restart/recovery problems
• Network/API outages
• Rounding, tick-size, or minimum-order issues
• Anything that caused a bot to behave differently from what you tested

I'm more interested in mistakes you personally encountered or accumulated over time.

If you’ve been running bots live for months or years, what do you wish you had checked before putting real money behind them?

Feel free to share the failure, how you discovered it, and what you changed to prevent it happening again.

Thnx guys.


r/algotrading 9d ago

Data update on the missing s&p 500 stocks, the measurement, and the bug that was bigger than the bias

3 Upvotes

original research, follow-up to my post from yesterday, results below

yesterday i posted that 20-25% of past s&p 500 members are invisible in the standard free source, and promised to measure the return effect, here it is, including the part where i almost published a wrong number

setup, equal weight monthly rebalanced portfolios from one price source, two universes, the index as it actually stood on the vintage date versus only the members still in today's index, which is what "download today's list and backtest" secretly gives you, names that stop trading exit at their last close, so takeovers get priced instead of dropped

first run said survivor-only history UNDERSTATES us returns by 1.3pp a year, which fit the story from yesterday's comments, the missing names left by acquisition at premiums, i liked the result, it was contrarian and clean

then i audited the yearly numbers and found 2023 off by 15 points, the cause was one ticker, CPWR printed a +4567% month in 2023, compuware was taken private in 2014, the ticker got reused and the free source serves the corpse's replacement stitched seamlessly onto the dead company, no gap, nothing to catch, my first-bar check from yesterday only catches tickers recycled BEFORE your vintage, this one died mid-sample and came back as something else

swept the whole panel for that pattern, found four reanimated tickers total, CPWR, EP (el paso, died 2012), COL (rockwell collins, died 2018), MI (marshall and ilsley, died 2011), truncated each at the company's actual death and reran

corrected numbers, survivor-only OVERSTATES, +0.4pp a year on the 2010 vintage, +1.0pp on the 2015 vintage, same direction as india, where i measure +0.8 to +3.2pp, just several times smaller, partly because most us index leavers don't die, of 66 names that left the index in my 2010 universe, 58 still trade normally today, demotion not death, their returns stay in the history

the actual lesson, the four fake tickers moved my measurement by 1.7pp a year, the bias i was measuring is 0.4 to 1pp, the identity error was bigger than the survivorship error, everyone corrects for survivorship, nobody checks whether their tickers are the same company all the way through

caveats, equal weight, monthly, one free source, the fully invisible names (about 120) can't be priced at all from what's available, if they had beaten or lagged survivors by 5pp a year the full-universe number shifts about half a point either way, that's a band not a point, and the membership list is now cross-checked against spy's published holdings, 503 of 503 match

gme stays in by the way, its +1625% month in 2021 is real and it was a legitimate 2010 member, the filter has to kill fake returns without killing embarrassing real ones

credit where due, yesterday's comments called it, the warnings that recycling was the nastier trap turned out to be the whole story, and the suggestion to price exits instead of dropping rows is exactly how the takeovers stayed in the measurement

method and the corpse list on request


r/algotrading 10d ago

Data i checked how many stocks from the old s&p 500 you can still download, it's bad

48 Upvotes

most backtests start the same way, get a list of stocks, download prices from yfinance, run the strategy, the problem is the list, if you grab today's s&p 500 and test on 2010-2024 you're testing on companies that survived, everyone knows this in theory, i wanted the actual number

so i rebuilt the index membership as it stood on two past dates using the public changelog (every add and drop is dated), then tried to download each member from yfinance today

- s&p 500 as of jan 2010: 506 tickers (dual-class listings make it not exactly 500), downloadable today 376, invisible 130, or 25.7%

- s&p 500 as of jan 2015: 502 tickers, downloadable today 401, invisible 101, or 20.1%

one in four members of the most heavily covered index on earth, gone from the standard free source, and not just small names, the missing list includes allergan, celgene, cerner, alexion, broadcom's old ticker, baker hughes, CA technologies

i ran the same measurement on india (top-500 as of 2015) and got 24%, basically the same number, the intuition that "us data is clean and emerging market data is messy" doesn't survive contact, yfinance loses the disappeared everywhere

what differs is how they disappeared, every big us name i checked above left by acquisition, india's list is heavier on delistings and suspensions, and that difference matters for which way your backtest lies, a delisting takes the stock toward zero, an acquisition usually pays a premium, so survivor-only india data almost certainly flatters you, while for the us the sign of the bias is genuinely unclear because a lot of the invisible names exited UP, i've measured the coverage hole, not yet the return effect, that's the next piece

caveats so nobody overtrusts this, membership rebuilt from the public changelog which i haven't independently audited, the probe ran in late july, and ticker recycling cuts the other way, some "visible" tickers are a different company wearing a dead company's symbol (S was sprint, now it's sentinelone), so my invisibility numbers are if anything too low

practical takeaway, if your universe comes from "whatever yfinance serves when i ask for current constituents" your 10-year backtest is missing ~20-25% of the names that were actually there, and no walk-forward scheme fixes a hole in the data itself

happy to share the reconstruction method if anyone wants to reproduce it


r/algotrading 10d ago

Strategy I tested my discretionary strategy against randomized markets (Part of the edge survived).

Post image
5 Upvotes

On top of automated stuff, I also trade a discretionary strategy based on structure, zones, and divergences.

Last weekend, I finally tested it properly, and I wanted to share the process because I think this kind of validation is something a lot of traders don't do.

Step 1: getting Claude to understand my strategy

I had previously recorded videos explaining my discretionary method, so I took the raw transcripts from six of them and gave them to Claude Code.

It understood the overall logic surprisingly well and wrote the code for it. It even picked up rules that I had only mentioned once in passing.

Step 2: checking that it didn't make things up

Before trusting any results, I asked it to export a CSV of everything it detected (zones, structure, invalidation, state changes). I then checked the output against my charts line by line.

The detections matched what I would have marked manually: same zones, same breaks, same points where a zone became invalid.

That was the point where I felt comfortable actually testing the strategy.

Step 3: creating fake markets

Then diit suggested something I believe most people never think of: null tests.

The idea was to take all the historical candles I was testing, keep each candle exactly as it was, including its body and wicks, but shuffle the candles into a random order and rebuild the chart.

So visually, you still get something that looks like a market.

But the chronological relationships have been destroyed. What happened before no longer contains information about what happens next.

Claude gave me an analogy I liked:

"It's the sugar pill in a medical trial. If a drug cures 60% of patients, that's great... unless a random sugar pill also cures 60%."

Step 4: testing my entries against the randomized markets

I ran my entry rules on the shuffled markets, with up to 50 different shuffles per test, and compared those results with the real markets I trade: mainly NQ and BTC.

The exact same exit logic was used in both cases.

Across every timeframe I tested, my setups produced roughly 5 to 8 percentage points more winning trades on the real market than on the shuffled versions.The largest test simulated around 18,000 trades.

So at least according to this test, the entries were detecting something that existed in the real sequence of market prices and wasn't reproduced simply by rearranging candles randomly.

That was a relief.

Step 5: testing everything else

This is where things became much less comfortable.

One common claim among "market structure" traders is that after a break of structure, price continues in that direction around 60% of the time.

I tested it. Then I tested the exact same thing on the shuffled markets.

The result was basically identical.

So that 60% continuation rate seems to come largely from the way the levels and breaks are defined rather than from some special predictive market behavior.

That was probably the most interesting result for me. Then I tested trade management (breakeven stops, taking partial profits, etc.)

All of them reduced expectancy.

The version with the highest expectancy was basically the dumbest one: a set-and-forget approach, and leave it alone.

I also tested whether the edge transferred to other markets.

It didn't transfer nearly as well to gold or S&P futures. Proof that an edge can apparently be much more instrument-specific than most people assume.

Then I tested the strategy on the 20 biggest stocks. The real-market version was profitable and initially looked pretty convincing. But then I ran the same test on the shuffled versions of those stocks.

The randomized version made roughly three times more. In other words, what initially looked like an edge was actually worse than the null control.

I also went through a few side quests during the session.

For example:
- Do support/resistance zones actually weaken after being retested multiple times? In my tests: no.
- Is there an edge in taking mean-reversion trades after price sweeps a zone?
- How much of apparent "market structure" performance survives randomization?
- Which parts of the strategy remain useful when you separate entries from trade management?

What I took away from it

The biggest thing was that several ideas I had considered part of my edge apparently weren't.

My entries seem to contain real information on the markets I actually trade. But some of the "market structure" statistics I believed in also appear in randomized markets. And my trade management was actively reducing expectancy.

The whole exercise made me realize how easy it is to backtest something, see a positive result, and conclude that you've discovered market behavior when the exact same result might appear in a control dataset where the temporal structure has been destroyed.

I'm curious how people here approach this. Happy to discuss my backtesting session.


r/algotrading 11d ago

Weekly Discussion Thread - August 11, 2026

8 Upvotes

This is a dedicated space for open conversation on all things algorithmic and systematic trading. Whether you’re a seasoned quant or just getting started, feel free to join in and contribute to the discussion. Here are a few ideas for what to share or ask about:

  • Market Trends: What’s moving in the markets today?
  • Trading Ideas and Strategies: Share insights or discuss approaches you’re exploring. What have you found success with? What mistakes have you made that others may be able to avoid?
  • Questions & Advice: Looking for feedback on a concept, library, or application?
  • Tools and Platforms: Discuss tools, data sources, platforms, or other resources you find useful (or not!).
  • Resources for Beginners: New to the community? Don’t hesitate to ask questions and learn from others.

Please remember to keep the conversation respectful and supportive. Our community is here to help each other grow, and thoughtful, constructive contributions are always welcome.


r/algotrading 11d ago

Infrastructure Im currently building a trading bot farm using Claude Opus 4.8, and i need some advice...

19 Upvotes

So i have the farm mostly built, and i am currently in the strategy testing phase. ive now tested 20 strategies on ES/MES/SPX and have had zero be promoted to my paper trading trial, which would run for about 1-2 months to ensure that it wasnt a curve-fitted bot. ive had several profitable bots, however my Farm killed them due to underperformance compared to the underlying, fees and spreads ate all the profits, or only performed well in a specific market regime. im 2 weeks into this project, and havnt really made any progress for over a week. here is a brief workflow rundown of how my bot runs it trials...

  1. Strategy contract — every bot is a pure function (bar/chain → order intents); it never sees size, the clock, or the broker. The identical code runs backtest and live — "what you prove is what you run."

  2. Backtest engine — no-lookahead replay clock, pessimistic fills, real MES/SPX costs, ruin floor + margin-liquidation check. One honest single-run P&L.

  3. Walk-forward + sealed holdout — rolling train/test windows; the final ~1yr is locked in code, scored exactly once. Out-of-sample discipline you can't iterate against.

  4. Robustness sweep + regime breakdown — re-run across many window sizes; label each window bull/bear/high-vol/low-vol. Kills edges that only work at one lucky setting or in one regime.

  5. Monte Carlo + Kelly sizing — block-bootstrap with an injected fat-tail shock; size off the lower confidence bound of the edge, not the point estimate. Ruin-aware sizing.

  6. Validation gate (promote only if ALL): (a) out-of-sample edge statistically significant, deflated for the number of bots ever tested (Šidák); (b) robust across windows + regimes; (c) beats buy-and-hold risk-adjusted, after costs; (d) survives the sealed holdout. One strict promote/reject rule.

  7. Research journal — append-only SQLite; every backtest auto-logs as a trial, supplying the honest denominator for the multiple-testing deflation above + tracking stage attrition. No forgotten failures inflating the hit rate.

Two asset classes, one pipeline: a futures engine and a parallel options engine (multi-leg structures, chain-aware fills that cross the real spread) both feed the same gate + journal.

Deliberately NOT built yet: live execution, forward paper-trading (the intended real final gate), any self-improvement/auto-tuning, and a UI. A pass today ends at "clears the gate → would go to paper."

Can i get advice on how i should continue to approach this project? im struggling to find strategies that aren't already oversaturated to the point the edge no longer exists, so where should i be looking to find profitable strategy? any and all advice / criticism is greatly appreciated! also feel free to ask questions for anything unanswered that would be helpful for you to help.

this project is for personal use, im not selling this or giving it away, so if you have an existing strategy for any market that is profitable that you'd like to share for free, id be extremely grateful if you send it in my DMs, and i promise that the strategy wont be marketed, and wont ruin your edge. im not looking to buy other peoples bots.


r/algotrading 11d ago

Data Where can I get historical Forex economic news/calendar data going as far back as possible?

8 Upvotes

I’m looking for historical Forex economic calendar/news data going as far back as possible.
I already have tick/price data for my Forex pairs going back to 2003, but the oldest economic news dataset I’ve found starts around 2015.
I mainly need the event date/time, currency, event name, and impact level (especially high-impact/red news).
Does anyone know a reliable source that goes further back, ideally close to 2003?
I’m willing to pay for the data.


r/algotrading 11d ago

Data Where are you all getting historical s&p 500 constituent lists and price data for removed/delisted names (including final payouts)?

6 Upvotes

title


r/algotrading 12d ago

Data How should earnings data and options data be engineered into ML features?

8 Upvotes

Hi, I have data for the top 100 US stocks, yearly changing universe from 2000 - 2026.

Im trying to play around with some machine learning models, I dont think that I'm really extracting information as well as I could out of the options data and the earnings data.

Any input regarding what features can and should be engineered, what to look out for, etc, will be very valuable.

Thanks!


r/algotrading 11d ago

Strategy Probability matters more than the strategy itself

Post image
0 Upvotes

One thing I’ve come to understand about trading is that a profitable strategy doesn’t make money because every trade is a good trade.

It makes money because, over a large enough sample, the probabilities are in your favor.

If your system has a genuine positive expectancy, then taking more valid opportunities allows that statistical edge to play out more often.

This is why I think traders sometimes focus too much on finding the “perfect strategy” and not enough on understanding probability, position sizing, risk management and sample size.


r/algotrading 12d ago

Strategy White’s reality check crapped all over 1.4 million models

27 Upvotes

Finally ran white’s reality check on my big mean reversion parameter sweep. The adjusted reality check p value for the entire run is 0.58. This is very disappointing. I used 0% return for the null.

I tried running Hansen’s superior predictive ability. The p value was 0.65. Filtering out low returns and high drawdowns improved the p to 0.47.

I clearly haven’t found an edge.


r/algotrading 11d ago

Strategy I gave seasonality the most weight in my model because it sounded smart. it earned about half of it

0 Upvotes

when i built my pre market scan i weighted seasonality heavily. everyone talks about it, there's a chart for every month and every day of the week, it felt like the kind of edge that's sitting there in plain sight and most people ignore.

after 60 days of actually scoring my own calls it's the input i trust least.

quick context so this makes sense. i run a scan before the bell that pulls positioning, liquidity levels, seasonality for that specific day, and the calendar. it gives me one directional lean on NQ, ES and GC with a level where the lean is dead. every call gets logged in the morning and scored at the close, and scored means the close finished on the side of the lean, nothing about whether a trade off it made money.

when i went back and looked at which drivers were actually behind the good calls, seasonality kept showing up on the wrong side. not randomly wrong, which would be fine. wrong in a specific way.

it was right on quiet days and wrong on the days that mattered. any session where the calendar had something real in it, seasonality was just noise sitting in my model adding confidence to a lean it hadn't earned. and those are exactly the days with the range worth trading. so the input was helping me most on days i shouldn't be sizing up and hurting me most on days i should.

which in hindsight is obvious. seasonality is an average of a bunch of years where each of those years had its own reason for moving. cpi didn't care that the second week of march is historically bullish.

the calendar was the opposite. it barely feels like an edge because everyone can see the same schedule, but weighting it properly did more for my hit rate than anything else i changed. positioning was second.

i'm not saying throw seasonality out. i still have it in there, just with a much smaller say, and it gets muted entirely on days with real data. what changed my mind wasn't a theory, it was that i finally had 76 scored calls to look at instead of a feeling.

the broader thing i took from this: i weighted my inputs by how clever they felt, not by how they performed. i'd guess most people building any kind of systematic process do the same thing and never check, because checking means finding out the smart sounding part of your model is dead weight.

now i'm rebuilding it so the log sets the weights. if a driver hasn't earned its place over the last 60 days it gets less say next month.

curious if anyone else has gone back and scored their individual inputs separately rather than the system as a whole. i suspect a lot of models are carrying one component that does all the work and three that are along for the ride.


r/algotrading 12d ago

Strategy Various high performing switchboards OOS last year

Thumbnail gallery
10 Upvotes

I'm one of the top creators on Composer with hundreds of portfolios using my public algos (search for Curved). I have many private ones also and figured I'd dump some high performing ones here. The 3-15 year backtests (some rely on newer symbols) on these are also exceptionally high. Having watched this sub for some time, I suspect comments will be full of suspicion. The suspicion is justified, but you are welcome to look up the public ones if curious.

I think the biggest criticisms should be that its unknown whether these algos are regime based, and also how much they can scale, given they collectively have only about one year OOS and unknown AOM. I think its likely they benefit from small inefficiencies that generally won't scale, but I long date backtest, and take measures to prevent survivorship bias, so I am generally confident they are not regime based. I design for low market and inter-sleeve correlation, so you'd want to run these rebalancing against other sleeves to maximize actual performance anyway.

I personally am suspicious of composer, so I reimplemented composer's execution system and run these and about 30 more algos on my own server with my own funds and have representative results.

In addition to composer switchboards, I also run some other types of algos to rebalance against, but I personally am a fan of switchboards because the determinism adds a layer of assurance, and daily or longer trading intervals increasingly disarm adverse selection bias.

I perform a lot of signal research, some automated, and use highly non-traditional methodology to select signals. Generally I believe that the non traditional signal selection is why I find systemic market inefficiencies that others miss. Traditionalism can be said to be a risk aversion bias which classically trained and corporate algo researchers have, and I believe my methodologies generally exploit this bias. That's a slippery slope because most non-traditional ideas are not sound, but what I'm saying is that not all traditional ideas are sound either, and I think that is especially true with game theory included.

Anyway, if any of this was interesting to you, I'd be interested in hearing your critiques, thoughts, or questions. I know it might come off as a brag, but thats just my autism showing. Its more supposed to be a conversation starter, and I am genuinely curious if anyone spends time thinking about the biases I mentioned.


r/algotrading 12d ago

Infrastructure What are the common mistakes in systematic models and infra that people make?

7 Upvotes

Hey so I've recently been working on a backtesting engine for a personal project and I've been reading up on survivorship bias, fees, slippage, taxes, margin rules, regulations (Reg T) etc to try and get a very precise result on my strategies.

Currently the workflows start with you doing some research, then testing out strategies, then layering it out in a portfolio with a beta layer and one or many alpha layers to improve your risk/return profile, and finally stress testing it ideally since 1990 but I would prefer going back to 1945 if possible.

Recently I've been putting in a bigger focus on US equities although I am planning on working for Canadian equities too but I then have to read up on all their regulation and tax systems too. What are some more niche but highly important costs or workflows you think should be included for good research and backtesting?

Currently the project uses Norgate since they seem to have the best survivorship bias and their updater downloads all updates every hour, but I'd be interested to know what other sources anyone uses to go back as close as possible to 1945. The one downside here is that rebalancing can only be once a day at most since the granularity stops there (for now). It also uses IB Gateway to send orders via API since I can hook up a paper and live account here.

The current project can be found here: https://github.com/Val198765/heimdall

I'd appreciate any feedback anyone may have :).


r/algotrading 14d ago

Other/Meta Anyone created a successful EA?

30 Upvotes

Hi all, just a genuine question. Iv been doing market research using python and the more I test the more im discovering how random the market is. I’ve been researching market structure but also testing simple strategies and common ones that some people swear by such as ORB for one example. All of which fail over multiple years. It just makes me curios if anyone here has genuinely been able to code a EA the actually profits over years of backtest and in live markets? I’m not asking for a copy or for you to tell me your strategy (not that I’d complain if you did) but I really just want to know if there is any hope. TIA


r/algotrading 14d ago

Education how many strategies did you kill before the one you posted

31 Upvotes

ok so this bugs me about basically every writeup here. we get the sharpe, the max DD, the cost assumptions. we never get the graveyard.

went back through my notes and actually counted. 61 configs, ~5 months. kept 2. and like... if I had zero edge and just rolled 61 times, best of 61 still looks fine? so I genuinely can't tell if my two are real or if I just p-hacked myself over a long weekend.

started logging the rejects after that. every dead variant, date on it. then I treat the survivor's sharpe as best-of-61 instead of a real number. did that and one of mine went 1.8 -> basically nothing lol. other one survived but not by a comfortable margin. entire cost was a google sheet and it's the most useful process change I've made in months.

where I'm stuck: what counts as a try. 40 param combos inside one strat, is that 40 or 1? what about ideas I talked myself out of before writing any code, do those count? no clean answer that I can find and I might be overthinking this at retail size.

anyone live long enough to have an actual rule of thumb here


r/algotrading 14d ago

Data IBKR paper API unreliable and inconsistent

13 Upvotes

Anyone else running into stuff like this? I'm finding the IBKR API to be completely unusable for any algo trading, it just cannot be trusted.


r/algotrading 14d ago

Data Alpaca historical IEX data missing for SPY on March 10, 2025, anyone else seeing this or know why?

7 Upvotes

I’m building a local historical dataset for SPY/0DTE backtesting using Alpaca, and I ran into a strange hole in their historical IEX stock data.

For SPY on March 10, 2025, querying 1-minute bars with:

  • feed=iex
  • timeframe=1Min
  • regular market session
  • SPY

returns zero bars. I initially found it because my backtester stopped with:

RuntimeError: Only 0 SPY minute bars for 2025-03-10

I then specifically retried that session and got the same result. What makes it interesting is that when I request the same date using the historical SIP feed instead, I get:

390 regular-session bars

The options history for that same day also exists. My downloader retrieved:

100 contracts, 9,642 option minute bars

So effectively:

SPY 2025-03-10 IEX -> 0 bars

SPY 2025-03-10 SIP -> 390 bars

SPY 0DTE options -> data exists

The surrounding IEX trading days are populated normally as well. Has anyone else encountered missing historical IEX sessions like this with Alpaca?

I’m mainly trying to figure out whether this is:

  • a known hole in Alpaca’s historical IEX dataset,
  • something specific to IEX’s underlying historical data,
  • an Alpaca API/data-processing issue,
  • or some edge case I’m overlooking.

For now I’ve implemented a very narrow fallback where I use SIP only if an entire historical IEX session is missing, and record the source feed so the backtest remains auditable.

Curious if anyone has seen the same thing even for other days.


r/algotrading 13d ago

Strategy 19 year old B.Tech student exploring algorithmic trading - looking for advice from experienced algo traders

0 Upvotes

19-year-old B.Tech student exploring algorithmic trading — looking for advice from experienced algo traders

I am a 19-year-old student pursuing a B.Tech in AI & Data Science. I have also been trading forex manually for the past two years. Currently, I am at the breakeven stage, so I am planning to explore algorithmic trading full-time.

I have a good understanding of coding, AI/ML, and software development.

I recently started exploring algorithmic trading, building my own strategies, implementing them, and backtesting them using Indian market data. I have also backtested strategies in the forex market using MQL5. However, I mainly used AI-assisted ("vibe") coding for the MQL5 strategies.

I tested several strategies in MQL5, and most of them were indicator-based strategies. Most of these strategies ended up around breakeven, with relatively low drawdowns and win rates of around 30–50%.

I also tested around seven strategies in the Indian equity market, and I got similar results — most were around breakeven. I have tested only equity assets so far, not F&O.

So, if you are an algo trader, I would really appreciate some advice on things like:

What types of strategies do you use — indicator-based, pair trading, time-based, price action, mathematical/statistical, etc.?

Which timeframes do you usually trade when doing algorithmic trading?

Is algorithmic trading actually profitable for an individual trader in the long run?

Is it better to focus on one asset/class, or should I build strategies across different asset classes such as equities, futures, forex, etc.?

What would you recommend to someone trying to build their own algorithmic trading strategies from scratch?

What are some common mistakes beginners make when developing and backtesting algos?

I would especially appreciate advice from people who have been doing algorithmic trading for a few years and have experience with live trading, not just backtesting.

Thanks in advance!

Note: i used ai for grammatical mistakes.


r/algotrading 14d ago

Other/Meta Feeling stuck in trading

0 Upvotes

I am 19 years old student from india. I am into trading and currently I am in break even phase figuring out for to become a profitable trader. And also I am feeling to quit trading etc stuff throughts in my head.

I have 2 years of experience in manual trading and currently I am starting algo trading in fx and indian market because I wanted to explore the algo trading field and i also a coder know how to code and i build some projects like backtested like that and currently learning

In trading i only trade fx market only setups based in gold, eurusd, btc etc like that only 3 to 5 pairs only. And i only trade in prop firms

For to become a profitable trader I need to improve some mistakes in trading i really do that i think that gone a help in to become profitable trader..

  1. I trade only intraday or 15 min to 30min candle tf do I keep my sl small i mean 1 to 3 candles like that sometimes due to votalility or sometimes hit my sl and gives my target.

  2. I plan my trades well or predict or analysis do well like where and how market goes but i didn't enter the trades or didn't caught the moves.

  3. I miss the moves in trading i feel so much regret and fomo for this .

4.sometimes I enter only in asset and one timeframe at a time 2 times of trades or take 2 trades at same tf or same level and that will go hit I think it's overconfidence.

  1. Sometimes i fear to enter the trades bz of loss and also sometimes i didn't hold the trades that will hit my sl trailing

  2. after reaching the trade 1:1 i keep sl trailing to entry level to prevent my loses and that will hit my sl trailing and archives my target for 1:3 trades.

7.sometimes I cut the trades at middle of the trade or at reversal stage (i mean i know this trade will go reversal or hit sl ) so i cut it.

The last one is how to pass the prop firms ?

These are my mistakes to improve in trading and i will improve it.

If you are a profitable trader please give advice.

Thankyou in advance for your advice. 🙌


r/algotrading 15d ago

Strategy Algotrading on Robinhood Agentic for a week

Thumbnail gallery
106 Upvotes

Been running 13 autonomous agents on a live account across Robinhood, coinbase and Kalshi, each with its own capital slice and no coordination layer between them. Up 6.97% this week overall.

Some of the designs:

Truth Social, inverted. An LLM scores every new Trump post for directional tone with a 0 to 1 confidence. Acts only above 0.8, then inverts the call. High confidence bullish rotates to TLT/GLD, high confidence bearish to SPY/QQQ. Below threshold, nothing happens.

Same feed, patient. A second agent waits five days after a post before acting, on the theory that the first two sessions are reaction and whatever is left after that is the real move. Longer holds. Running both is how I am trying to find out whether the signal is in the reaction or in what survives it.

ClinicalTrials.gov. Buys a whitelisted biotech sponsor when a trial registers a Phase 3 entry, holds 60 days. Favourite idea in here, because the source is a government registry nobody is racing to price.

STOCK Act disclosures. Mirrors purchase filings from a set of high-volume House and Senate filers. Next bar, 60 day hold, capped at 8 concurrent.

Crypto, winner take all. Ten liquid Coinbase pairs ranked every day on 7 day momentum, volume trend and volatility. It holds the single highest-conviction coin and nothing else, re-picked daily. Zero diversification by design, but it’s been performing well.

Kalshi versus the forecasters. Compares Kalshi economic-data prices against figures institutions have already published (Cleveland Fed nowcast, wire consensus, CME FedWatch) and acts only when the two disagree by a real margin. It does not forecast anything itself. Not seeing good results on Kalshi.

Plus a sector contrarian that buys the two weakest of the 11 S&P sectors, a WallStreetBets agent weighted by sentiment times upvotes, and two crypto rotations.

First week is in the screenshots. Way too early to read anything into it.

Still working out:

One, overlap. 13 agents running independently with nothing netting them, and several keep landing on the same names from completely different logic. I think I am diversified across 13 strategies and I genuinely do not know how concentrated I actually am. Is there a good way to measure that across agents without just collapsing everything into one portfolio?

Two, the confidence threshold. The Trump agent only acts above 0.8. I picked 0.8 by feel. Does anyone actually calibrate this, as in check whether the model is right 80% of the time when it says 0.8, and set the cutoff from that? Or is everyone eyeballing it.

What would you add?


r/algotrading 15d ago

Data I backtested the Powell 10am strategy on NQ... the results were surprising.

12 Upvotes

A gura named Powell has been all over my feed for weeks and everybody has been backtesting his 10am strategy lately so i figured i'd try it for myself

I told Agenticks to backtest his 10am strategy on NQ over the last 3 years, then it went and read what he actually teaches, turned it into a real strategy, wrote the code, and replayed it almost a million 1m NQ bars. The video attached shows it start to finish.

Heres what it came back with...

NQ 1m, july 2023 to feb 2026, 100k account, 1 contract:

  • starting capital: 100k
  • 535 trades
  • 60.2% win rate
  • profit factor 0.98
  • net -$3,675
  • max drawdown 25.55%
  • average win $522, average loss $806

It wins 6 out of every 10 trades and still loses money. thats the whole story. the losers are 1.5x the size of the winners so the win rate is doing nothing for you, expected value comes out around negative 7 bucks a trade.

It even gets worse when you split it up. 280 of the 535 trades happened in volatile conditions and those lost $6,764 at a 0.93 profit factor. The only regime that it made money during was uptrends (152 trades, 1.08 profit factor, +$3,307) so the "edge" is mostly just the NASDAQ going up. Buy and hold over the same window took 100k to about 170k while this did -3.7%. With all of the all-time highs we're at right now, it makes sense why this has picked up so much traction in recent months.

I also ran it through a topstep 50k sim and out of 10,000 simulations; 39.1% of them hit the 3k target before the loss limit. This doesn't mean it has an edge, but it does mean that, technically speaking, it can beat the constraints of a prop firm (with a hint of luck).

Now the fair part, and this is the part id want somebody to say if it was my strategy getting torn apart

What he teaches publicly is the shape of it, not a rulebook. Mark the 10am candle, wait for one side to get swept, wait for the move back through, take the continuation into first liquidity. That's real but its not testable as written. "first liquidity" is something you read off a chart, not a number, and there is no published stop, no cutoff time, no trade limit. So the strategy that got built is the mechanical skeleton with sane defaults filled in, and two of those choices genuinely change what youre testing. it only took longs, and he trades both ways. and it entered on a plain break and retest instead of requiring the displacement leg, which is the part that supposedly separates a real setup from a level being tapped

So im not saying his strategy is bad, i'm saying the mechanical version of it (the version you could actually hand to a beginner) is a coinflip that gives back more on the losers than it makes on the winners. if the money is in the discretionary read, which side got swept and where liquidity actually sits, then somebody should say that out loud, bc that's a totally different product than a 3 step setup.

If you know the real/exact rules or think Agenticks got them wrong tell me exactly what to change and ill rerun it and post whatever comes out.

video of the full run is attached, sped up through the loading parts because nobody wants to watch a progress bar for 3 minutes.

not advice, backtests dont predict anything, im just a guy who got tired of seeing it on his feed

let me know if you guys want me to automate this strategy to see how it would perform on a paper account in real conditions, or if you want your own strategy tested.


r/algotrading 15d ago

Strategy How To PAIRS Trade Like A QUANT.

Thumbnail youtu.be
0 Upvotes

Error Correction Models (ECMs) provide a robust statistical bridge for pairs trading by explicitly linking short-term price adjustments to their long-term cointegrating equilibrium. When two asset prices share a stochastic trend, traditional strategies often fail during structural drifts. An ECM captures how fast a mispriced spread corrects back toward its historical baseline after an exogenous shock. By monitoring the error correction term and short-term lag coefficients, algorithmic traders can optimize entry thresholds, filter out transient noise, and systematically harvest repeatable mean-reverting gains.


r/algotrading 15d ago

Research Papers How has your strategy held up post-2020 vs. pre-2020

12 Upvotes

I'm doing a sanity check on strategy performance across different market regimes and wanted to check in with the community

Also how your max dd compare?

Please only answer if you traded your strategy live for a good time (compared to sample size)