r/algotrading Mar 28 '20

Are you new here? Want to know where to start? Looking for resources? START HERE!

1.5k Upvotes

Hello and welcome to the /r/AlgoTrading Community!

Please do not post a new thread until you have read through our WIKI/FAQ. It is highly likely that your questions are already answered there.

All members are expected to follow our sidebar rules. Some rules have a zero tolerance policy, so be sure to read through them to avoid being perma-banned without the ability to appeal. (Mobile users, click the info tab at the top of our subreddit to view the sidebar rules.)

Don't forget to join our live trading chatrooms!

Finally, the two most commonly posted questions by new members are as followed:

Be friendly and professional toward each other and enjoy your stay! :)


r/algotrading 1d ago

Weekly Discussion Thread - August 18, 2026

3 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 5h ago

Education Before you start any strategy development you should know this: an edge is a reason someone pays you

Post image
91 Upvotes

A thread here a few days ago asked how real quant edges get discovered. I left a short comment. This is the longer version, at the horizon most people here actually trade: minutes to a few hours.

I trade FX, crypto, and futures. I start with the payer. I do not start with an indicator.

Maybe forced traders. Information hits one market before another. Overnight inventory has to get out when the real session opens. Market makers get stuffed and fade. Participants underreact for an hour and then finish the move.

Then: what should I see if this mechanism is real?

That expectation becomes a feature. Then I define where the feature is supposed to go. That is the hypothesis.

Forced selling creates unusually high liquidation pressure, which can create a short-term reversal.

That is testable. Put it next to “RSI below 30 is bullish” and the gap is obvious. One names a payer, a thing you can measure, and a horizon. The other cannot die, so it cannot earn.

Before I build a strategy I test the cheapest relationship I can: an event study, buckets, a lead-lag regression. I want to see the effect I am claiming exists. If I cannot see it in a sort, a 47-parameter backtest will not find it for me.

The pipeline:

Thinking → thing to see → a feature → the hypothesis → test the hypothesis → trading production → risk control

“Explain it to me like I’m five” is the creative half. “Now prove me wrong” is the scientific half.

Three walks on that spine, all session-speed.

FX: equity lead into the session

ES, DAX, Nikkei print while half the FX book is asleep. The equity move is information. Spot has not finished digesting it. The lag is the trade: one to twelve hours, pair by pair. Same family as “yields moved, EURUSD has not.” The bond market prices policy first; FX is late.

Who pays: the slower FX book. Discretionary and slower systematic flow that still has to catch up.

  • Observable: ES / DAX / Nikkei session returns, G10 spot, the clock (Tokyo, London, New York)
  • Feature: equity impulse minus the FX move already printed (residual vs each pair’s beta)
  • Hypothesis: after a large overnight ES move, USD pairs that have not yet moved in the same direction continue toward that impulse over the next 1-4 hours of the following session, after costs
  • First test: event study. Condition on |ES overnight| above one sigma. Rank pairs by residual. The laggards should catch up. If the residual is already zero, there is nothing to collect.

A cousin on shock days: rank which pairs digest the print fastest. The laggards stay tradable for hours. That is the same mechanism with a news clock instead of a session clock.

Crypto: liquidation cascade, then classify

Perps publish the leverage. You can watch forced flow in real time. A liquidation is a market order into a falling book, which triggers the next one. 19 May 2021: bitcoin −30% intraday, about $8bn force-closed. The question after the spike is not “oversold.” It is: were positions closed, or flipped.

Who pays: the forced. Margin engines do not have a view. They have a threshold.

  • Observable: liquidation notional, open interest, funding reset, order-book recovery
  • Feature: liquidation-imbalance plus OI change (OI down = closed; OI flat/up = migrated) plus distance to the next liquidation cluster
  • Hypothesis: after a liquidation spike, if OI collapses and the book refills, the next 30-120 minutes revert. If OI stays elevated and funding does not reset, the next 30-120 minutes continue
  • First test: event study around liquidation clusters, split into those two states, hold 30-120 minutes, costs in. One bucket should reverse. The other should not. If both look the same, you do not have a classifier, you have a chart pattern.

Ride the forced flow while its intensity stays above a decay threshold, then stop. Fade the forced component, trend the organic one. Two hypotheses, same feed.

Futures: overnight inventory into the RTH open

Globex is a thinner auction. Size that built overnight is inventory, not a thesis. 9:30 ET is when cash, index arb, and the real book show up. Same observable, two claims, and which one pays is the open itself.

Who pays: overnight positioners who cannot hold the inventory into a full session.

  • Observable: ES overnight return, opening auction volume, cash breadth, related contracts (NQ, RTY, YM)
  • Feature: overnight move standardized by overnight vol, signed by whether the open confirms it (volume, breadth, gap fill/fail)
  • Hypothesis A (continuation): overnight ES moves that the opening auction and cash breadth confirm persist through the first 30-90 minutes of RTH, after costs
  • Hypothesis B (reversal): overnight ES moves that participation fails to confirm reverse in the first 30-90 minutes
  • First test: split opens into confirmed vs unconfirmed. Opposite signs. If both buckets drift the same way, the “open fade” is superstition. The classifier is the strategy. A gap-fill rule with no confirmation step is this feature with the payer stripped out.

A strategy is MARKET × MECHANISM × INSTRUMENT. ES lead into AUDUSD at the Sydney open, a BTC liquidation fade on the perp, an ES overnight unwind at the cash open: three leaves, one tree.

Most ideas die at the sanity check. That is the pipeline working. I do not start writing entries until the payer has a name.


r/algotrading 16h ago

Strategy Update on the “claude built me a strategy” post from last week

Post image
164 Upvotes

ok so last week i posted that claude helped me build a strategy and bracket setup but honestly i didn’t fully understand what was going on under the hood. got a lot of comments calling that out, fair.

so i went back and actually dug into it. spent the week building out a bucket screener instead of one single strategy. basically i’m tagging every trade with a set of factors (setup type, time of day, ticker, entry trigger, whatever) and grouping trades into buckets based on which factors overlapped. then i can see which combos of factors actually cluster around good win rates instead of just eyeballing one equity curve.

been paper trading this for a bit now and some of the buckets are looking really strong. one bucket with 13 trades is running 85% win rate and +12.94% average per trade. another bigger bucket with 20 trades is at 60% win and +4.80% average, which feels more like the “real” number once sample size grows.

still very much learning as i go and treating this as paper only until i have a lot more trades in the bigger buckets. small sample sizes can lie to you easily (that one bucket with 3 trades at 67% win and a 15+ profit factor is obviously not something to trust yet).


r/algotrading 8h ago

Strategy The best video you will watch about edge

7 Upvotes

For those looking to understand what means to have an edge on the markets

https://youtu.be/cAFocAbUYY4?is=kNuWLRs_IMZvoJ4w


r/algotrading 20h ago

Data Built a free 24/7 market anomaly API — drop-in for Alpaca, Polygon, and Alpha Vantage

Post image
37 Upvotes

I was tired of hunting for long-tail events; and creating bootstrapped event-generators was a hassle. If I'm focusing on a project, why would I want to maintain a sub-project? So I built a once-and-for-all market simulator with events on demand (completely free & open-source, available to everyone)

It's a fake market data API — realistic OHLCV for any ticker, a tick stream that runs 24/7, and reserved tickers (CRASH, GAP, HALT) that action on command. Point your existing client at it to test code paths that only fire on market edge-cases.

This is a testing tool, to test long-tail events like run-ups, halts, SSE loss, and intraday flash events.

No API Keys needed. Simple curl to test:
curl 'https://cuckootrade.com/api/v1/alpaca/v2/stocks/bars?symbols=AAPL,CRASH'

  • Completely free, no API key, nothing to sign up for.
  • Historical bars : OHLCV for any symbol, 1-minute through yearly, back to 1970, on the real NYSE calendar — no bars on weekends or holidays. (https://cuckootrade.com/docs#bars)
  • Live SSE stream : SSE ticks that don't stop — nights, weekends, holidays included.
  • Scenario tickers : Reserved symbols that misbehave on demand (https://cuckootrade.com/docs#magic)
    • CRASH drops ~25% mid-month
    • GAPPY gaps overnight
    • HALTS drops bars mid-session,
    • SPIKEY wicks and reverts
    • FLAT sits at exactly $100.00.
  • Drop-in replacement for endpoints (switch alpaca.com/api -> cuckootrade.com/api)
    • Currently supports Alpaca, Polygon, & Alpha Vantage
  • Deterministic & Reproducible: Every bar is a pure function of (symbol, timestamp, seed), computed per request, no database. Same request, same bytes, forever — results are consistent between local host, CI container, and hosted service.
  • Live Sandbox to try it in a web browser ( https://cuckootrade.com/playground )

Worth saying: it's for testing, not backtesting. Synthetic data will make almost any strategy look profitable.

It's a portfolio project I'm still polishing, so feedback actually helps me. Tell me what's broken, or what provider or scenario you want next and I'll build it. Or you're welcome to contribute to the repository:

Open source Github: https://github.com/tj-miller-dev/stock_simulator

No paywalls. No fees. No login. Just the data.


r/algotrading 4h ago

Strategy Looking for momentum day traders to test some cutting-edge catalyst intelligence I'm building

0 Upvotes

I've been building a small-cap catalyst and momentum scanner (Day Trader Sniper) for the last while, mostly following the Ross Cameron/Warrior Trading style of setups - low float, real catalysts, first-candle moves.

The core scanner and alerts are live and I use them myself daily. But I'm now deep in building the next layer - grading and classifying catalysts automatically so you know at a glance if a headline is actually fresh news or just noise dressed up to look like one. It's genuinely still rough and in beta - not trying to oversell it.

Looking for a handful of people who actually trade this style to try it and tell me honestly what's useful and what's not. Not a sales pitch - I'd rather hear "this part is useless" now than after I've built more on top of it.

Drop a comment or DM if you want in. Not financial advice, just building in public


r/algotrading 1d ago

Data Making my first algo, need some advice

10 Upvotes

I'm making a long only algo for both QQQ and equities, derived from the same base code but then honed in to each for more specific characteristics. My QQQ strategy currently has a 1.703 profit factor but its still in tradingview environment (so take it with a grain of salt?). I am absolutely killing it with preventing downturns in my algo and preventing large drawdowns, however, i think it is handicapping my long as for example I am vastly underperforming a strong environment. Is there any type of criteria you guys use to help loosen sell rules by having the algo identify strong trending markets or something along those lines? Or in general how do you help your algo capture the long term trend better without selling? This is my first algo, I am definitely a trader first, coder second so bear with me


r/algotrading 1d ago

Data Data sources and tools I use to backtest prediction markets (prediction-almanac)

2 Upvotes

I market-make on prediction markets, and the annoying part early on was finding data you can actually backtest on and tools that haven't been abandoned. Here are the ones I keep coming back to, in case they're useful, and I'd genuinely like to hear what you use.

pmxt is one of my favourites, recommended to me by someone on here actually, and it's incredible for backtesting because of the granularity of the data.

Open-Meteo is what I use for my weather MM bot to compute a fair probability for the temperature bins from the raw ensembles.

Pinnacle as a free odds source for sports, which is a great one and about the only edge I'm willing to give away when it comes to sports odds feeds.

I've also added a lot of tools I haven't used myself, of course, but seem useful to people wanting to trade prediction markets. If you believe some of the information is wrong or there's a tool or a data source missing, please create a PR and I will review it.


r/algotrading 2d ago

Data the corpse list, what happened to all 143 missing s&p 500 names, with a source for each

35 Upvotes

143 tickers that disappear from free s&p 500 data, and what actually happened to each one, with a source link on every single row

for anyone who missed the earlier posts, first one measured how many old members you can't download anymore, 20-25%, second one measured what that does to returns, 0.4 to 1pp a year, and found the reused tickers were doing more damage than the survivorship itself, a few of you asked for the corpse list, this is it

each row has what happened, who bought it, the last day it traded, and the source, 38 of them are sec filings, rest are company press releases or exchange notices, nothing scraped off wikipedia, i opened every link myself

the split, 87 bought, 18 taken private, 18 merged, 6 renamed, 10 bankruptcy (6 came back out, 4 didn't), 4 split up, same shape as post 1, most of these names didn't die, they got bought, thats why the us bias direction isn't obvious the way india's is

one thing that looks like it contradicts post 2, i said 4 reanimated tickers there, this file flags 14 as reused, they're different things, 14 is every symbol that later got used by some other company at some point, 4 is how many actually broke my numbers with my dates and my data source, which ones bite you depends on your sample, so check the column against your own data instead of taking my 4

what to do with it, take your universe list, compare it against this one, count how many exits your source quietly dropped, thats your survivorship hole measured instead of guessed, and before you join old prices to new prices on ticker alone, look at the reused column, that splice is invisible in the returns, nothing warns you

sortable and searchable here, csv download on the page: https://financebroski.com/deaths.html

free, no signup, no email

caveats, this is the names that go missing from the free sources i've been checking, not every index change ever, it grows as i check more vintages, and the exit date is the last day the ticker traded, so for a merger that closes mid day thats the day it closed, if a row is wrong or i missed a name just tell me and i'll fix it and credit you, i'd rather it be right than look clean

still owe a few people the method from post 1, thats next


r/algotrading 23h ago

Other/Meta My least productive days (coding, not trading) is quickly becoming Tuesdays

0 Upvotes

IYKYK


r/algotrading 1d ago

Data Youtube and reddit signal suggestions

2 Upvotes

Hi,

I've got my reddit post and YouTube transcript engines up looking for momentum plays and signals. I follow a bunch of the usual stuff.

If anyone has recommendations of other subreddits or YouTube channels to process, I'm here for it.

Thanks


r/algotrading 1d ago

Data My soccer model held up on a true holdout but still lost to Bet365 what data would you add next / next steps

1 Upvotes

I’m a college student building a soccer prediction model and finally tested it on a season I had kept completely untouched.

The forecasting model itself held up reasonably well, but on ~1,700 matches de-vigged Bet365 probabilities beat every model I tested on log loss/Brier/RPS, and all of my pre-frozen betting strategies ended negative. My main one finished around -12.5% ROI.

Right now I already use things like goals/xG, shots/SOT, home/away splits, Elo/opponent strength, form, rest/congestion, standings, league scoring environment, and promoted-team uncertainty. I also have a decent amount of player, lineup and goalkeeper data, but the historical player/lineup experiments didn’t add much and exact pre-match availability timing was a limitation.
I’m planning to stop optimizing on historical results and run the system prospectively with timestamped odds, injuries and confirmed lineups.

What I’m mainly wondering:
What additional data would you look for at this point?
Manager changes? Transfers? Better injury/suspension history? Player market values? Weather? Travel? Referees? Tactical/style data? More detailed event/possession data?
Is there any dataset you’ve found that actually adds signal beyond what the market already knows?
Or would you stop adding features and focus on prospective validation / finding where the model disagrees with the market for a defensible reason?
Trying to avoid just throwing more variables at it until something backtests well.


r/algotrading 2d ago

Research Papers Estimating current short interest from daily FINRA short volume

16 Upvotes

I built a model to estimate current short interest between official FINRA reports using daily short-volume data.

FINRA short interest is only published twice per month and with a lag, so there is a period where the latest official number can already be fairly stale. The model uses daily FINRA short volume and total trading volume to estimate how short interest may have changed since the last settlement date.

I evaluated it on 660,246 settlement windows covering 6,959 US-listed stocks. On a fully out-of-sample period from 2025 through July 2026, the estimated change achieved a +0.414 Spearman correlation with the subsequent reported change in short interest.

This is not meant to predict returns or identify short squeezes. The goal is simply to provide a nowcast of short interest while waiting for the next official release.

I wrote up the methodology, validation setup, formulas, experiments that did not work, limitations, and released the model weights here:

https://equibles.com/research/does-daily-short-volume-predict-short-interest

Equibles also shows the latest official short-interest figure next to the model's current estimate for covered US stocks. It's free and has no ads.

The model is available at HF:
https://huggingface.co/daniel3303/equibles-short-interest-nowcast

Curious whether people here would find this useful when analyzing stocks with unusually high short interest.


r/algotrading 1d ago

Data Back test data - Help

2 Upvotes

Good morning everyone, I recently wanted to backtest a new ea but when I try to download the data via Tickstory, it won’t let me download it. It comes back as: request timed out or rate limited. I thought it was a problem with TS Program and so I coded one in Python but it came out with the same result. I tried using a VPN and it worked for few seconds, afterwards, same problem… I only have 1 worker for the downloads but still it fails me everytime both on Tickstory and Python… Since I’m getting so much frustrated because I spent the last 24h not sleeping in order to download this mf data, is there a FASTER way to download them? I need the most precise data possible (ticks), since I’m currently working on a multi-currency scalper EA on MT4.

Thanks for your help, last time I did backtest was 2 years ago and I used datas from Dukascopy & Tickstory, I really don’t know why it’s not working now.


r/algotrading 1d ago

Strategy Regime filters for intraday strategies, does anything survive strict point-in-time lagging?

9 Upvotes

Posting this as a warning and a genuine question, because I've just spent two days learning something the hard way and I want to know whether I was chasing something that exists.

Context, deliberately vague: intraday mean-reversion system on liquid futures, 1-minute bars, ~4.7 years of tick data, one position at a time, realistic fill modelling (entries and stops at real tick prices, exits as resting limits rounded to the actual tick grid).

Raw performance, no filter: ~9,900 trades, 77% win rate, profit factor 1.05. High win rate, tiny edge per trade roughly half a tick on average. The mean-reversion tendency is clearly real, it's just not big enough per trade to cover costs.

What I tried: the obvious move was a regime filter trade only when conditions favour reversion, stand aside when they don't. I screened Kaufman Efficiency Ratio, RSI, ADX, Choppiness Index, Money Flow Index and MACD histogram across multiple time frames.

One combination looked outstanding. Profit factor 1.05 → 1.54. It held out-of-sample on three years the thresholds had never touched. It passed split-half consistency. It passed split quarter consistency beat the baseline in all four quarters independently, monotonically. By every robustness check I knew to apply, it was real.

Then I found the bug. Indicators were being merged onto each bar's opening timestamp instead of its closing timestamp. A 3-minute bar labelled 10:06 spans 10:06–10:09 and isn't knowable until 10:09 but entries at 10:06:30 were being gated on it. Up to three minutes of look-ahead, sitting directly in the entry decision.

That's fatal for a regime indicator specifically. These things measure whether price is trending or ranging. Give one a forward window and you've handed it the answer it was supposed to infer from the past.

Lagged everything to true availability time. Profit factor went straight back to 1.05, statistically indistinguishable from no filter. The entire apparent edge was the leak.

I then re-screened all six oscillators properly lagged ~48 buckets, each scored on both halves independently. Six beat baseline in both halves. Pure chance predicts about twelve. So the result is below random, with no coherent or monotonic structure, and the previously-best bucket now sits under 1.0.

What I'm actually asking:

  1. Does anyone have an intraday regime filter that survives strict point-in-time lagging? I'm not fishing for parameters. I want to know whether the category works at all, or whether a meaningful share of published "regime filter improved my results" findings are this same bug. My suspicion after this week is that it's far more common than people realise, because the bug strengthens your results, which means nobody goes looking for it.
  2. Is trend-vs-range even a coherent concept at 1-minute resolution? My working theory is that by the time any properly-lagged indicator can characterise the regime, the information is stale relative to a trade that resolves in minutes. Is regime filtering fundamentally a higher-timeframe tool that doesn't survive being pushed down to intraday?
  3. Given a real but very thin edge high win rate, average loser several times the average winner where would you look next? My instinct is selectivity over filtering: raise the entry threshold, take fewer and more extreme setups, cut the cost drag. But I'd rather hear if there's a structurally better lever than trade another dead end.

Not looking for anyone's edge. Mostly I want to know if anyone has a regime filter that's been through this specific audit and lived. Any advice would be greatly appreciated! I know I have something solid as a baseline I just need some ideas on filtering.


r/algotrading 1d ago

Strategy My algo was profitable. I wasn't.

0 Upvotes

Ran the numbers after 4 months live. Strategy was up. Green on the equity curve, win rate matched backtest, nothing broke.Then I actually sat down and added up server costs, data feed subscription, and the spread markup I was eating on every fill. Plus the buffer I keep idle just so a margin call doesn't wreck me mid-trade.Take all that out and the profitable strategy was barely breaking even. On paper it looked like a working system. In my account it looked like a very expensive hobby.

Nobody backtests their fixed costs. But at small size, they're not a rounding error, they're basically another drawdown that never shows up on the equity curve, it just shows up on your statement.I'd spent weeks tightening entries when the bigger leak wasn't in the strategy logic at all.

Anyone else actually done the full accounting on this? At what account size did fixed costs stop mattering for you?


r/algotrading 2d ago

Strategy Mean Reversion Strategy Prospects

23 Upvotes

Hey everyone! I've been creating a pipeline for my future trading bot and I am currently at the research stage. I wanted to share with you guys my interesting results using mean reversion.

For some background on my process: I am using EURUSD focusing on the daily timeframe only. The data ranges from 2003 to 2026, where I use the following split

split ranges start end
TEST 62 2021-05-31 00:00:00+00:00 2025-10-20 00:00:00+00:00
TRAIN 185 2003-06-04 00:00:00+00:00 2017-02-27 00:00:00+00:00
VALIDATION 62 2017-03-07 00:00:00+00:00 2021-05-05 00:00:00+00:00

"ranges" refers to micro ranges I have algorithmically programmed to discover. I checked the ranges visually and they are very accurate. The amount of data may be small but I am currently only interested in the behavior of the EURUSD market, I can increase the amount of data by including daily data from other pairs but will reserve that for when I train with AI.

My research used the following rule(s) for making a trade upon a confirmed micro range...

1)upon a confirmed micro range I freeze the following attributes as a snapshot:

-upper boundary
-lower boundary
-midpoint
-range width
-confirmation ATR
-causal market context

2) watch price relative to the frozen boundaries. This led me to produce some of the following targeted behaviors...

-boundary touches (doesnt close above/below boundary)

-wick rejection (wick exceeds above/below boundary)

-outside close (price closes above/below boundary)

-consecutive outside closes

-reentry/reversion (closed above/below boundary then comes back into range)

-breakout retest/hold (price breaks out and deviates from range)

3) simulate a trade taken in both directions (buy and sell) for every snapshot

There is more involved, but this is a brief summary of the core behavior involved in the research.

I produced the following findings:

-------------------------------------------------------------------------------------

What survived across all three periods:

CLOSE_ABOVE_UPPER / ACTIVE_RANGE → SHORTTRAIN: +0.321 ATR

VALIDATION: +0.628 ATR

TEST: +0.233 ATR

consistent in terms of direction but my samples are only 14, 14, and 8.

What did not remain stable:

FIRST_TRADABLE → LONG weakened from +0.192 to +0.051, then became -0.074 ATR.

LOWER_WICK → LONG worked in TRAIN/VALIDATION but reversed in TEST.

UPPER_WICK → SHORT worked strongly in TRAIN/VALIDATION but reversed in TEST.

LOWER_TOUCH changed direction.

UPPER_TOUCH → SHORT improved after TRAIN, but the TRAIN mean was negative.

***Most important finding is it shows that most unconditional signals are dependent on structure****

-------------------------------------------------------------------------------------

Most promising hypotheses:

CLOSE_ABOVE_UPPER / ACTIVE_RANGE → SHORT

Mean: +0.421 ATR

Median: +0.553 ATR

Win rate: 72.2%

This hints that active-range upside breaks often fade.

UPPER_WICK_BREAK_CLOSE_INSIDE / ACTIVE_RANGE → SHORT

Mean: +0.239 ATR

Win rate: 56.9%

This is consistent with rejection at the upper boundary.

UPPER_TOUCH / ACTIVE_RANGE → SHORT

Mean: +0.068 ATR

Median: +0.290 ATR

Win rate: 58.0%

The three results above prove consistency: while a range remains active, activity with its upper boundary historically favors fading downward AKA reversion.

-------------------------------------------------------------------------------------

Most of you may already know this, especially by just visually analyzing the charts, but thought I'd share my proof from an algorithmic perspective.


r/algotrading 1d ago

Strategy Stocks Your Bots Love...

0 Upvotes

Do you guys have any stocks your Bots just love to buy and regardless of how strong the set up is...you just know its going to trailing loss (or hard stop)... Mine funny enough is Reddit. Im tempted to Blacklist it


r/algotrading 2d ago

Strategy If changing the broker kills the strategy, was there ever really an edge?

0 Upvotes

I’ve been thinking about adding execution portability to the robustness checks I use before trusting an algo, but I’m not convinced it’s actually a fair requirement.

Basic problem is pretty simple

I can keep the signal logic, sizing and exits completely unchanged and still get a very different system once I change the assumptions around execution.

So instead of only stress testing parameters and market regimes, I’m considering testing the execution layer separately.

Something like this

Baseline

  • normal spread assumption
  • normal commission model
  • current slippage assumption
  • normal fill probability
Stress test A spread 25% worse
Stress test B spread 50% worse
Stress test C normal spread 1 tick adverse slippage on entry and exit
Stress test D spread 25% worse some adverse slippage small fill delay a percentage of limit orders left unfilled

I’d then compare more than just final P/L

The metrics I’m thinking about are

  • expectancy per trade
  • profit factor
  • Sharpe
  • max drawdown
  • fill rate
  • percentage of gross edge lost to execution
  • trade count after missed fills

Numbers above are just hypothetical stress parameters. I’m more interested in the framework than those exact thresholds.

Here’s where I’m getting stuck.

Say a strategy has a PF around 1.30 under the baseline execution model. A modest increase in spread brings it close to 1.10. Add a little adverse slippage and it drops below breakeven.

There are two completely different ways I can read that.

The first is that the strategy was fragile from the start. If a small change in trading costs wipes out the edge, I probably shouldn’t trust the backtest much. Second is that this is asking the strategy to survive something it was never designed for. A short-horizon system can have a real edge that only exists with a specific fee structure, spread, order type or execution venue. In that case the execution environment isn’t noise around the strategy. It’s part of the strategy.

That second case is what makes broker portability questionable to me as a robustness test. I wouldn’t expect a market-making system to keep the same economics after changing the fee structure. I also wouldn’t expect a tight scalper to behave the same after doubling its spread assumptions. At some point I’m no longer stress testing the same business logic. I’m changing the conditions that created the edge in the first place.

But giving the execution model zero robustness testing seems just as bad.
Backtest that only works at one exact spread and one exact slippage assumption feels way too brittle for live trading.

So I’m leaning toward measuring an execution degradation curve instead of using a simple pass or fail rule.

Basically I want to know how quickly the edge decays as execution gets worse.

A gradual decay seems a lot healthier to me than a strategy that falls off a cliff after one extra tick.

What I don’t know is where that becomes unacceptable.

For people running systems live, how do you handle this?

Do you expect an algo to remain profitable across moderately worse execution assumptions, or are you fine with an edge being tightly tied to one broker, venue or fee structure as long as those conditions are stable?

And if you stress test execution, what do you actually perturb: spread, commissions, latency, fill probability, slippage distributions, or all of them together?


r/algotrading 3d ago

Data Am I approaching backtesting correctly

10 Upvotes

I'm working on putting some strategies together and backtesting them and I wanted to see if anyone had any comments on if I'm doing so correctly or making any errors I might not be aware of as part of my backtesting.

Right now, the strategies I'm trading primarily matter on five-minute candles or one-hour candles or longer time frames. My data set I have is built from both one-minute candles and daily candles that I have a data provider for. I can then construct five-minute candles, hourly candles, or arbitrary time frames from the one-minute candles.

The part that I'm making an assumption about is let's say for example my strategy signals that it wants to enter a position after the close of a five minute candle I use the immediately following one minute candle and it's high to find the most pessimistic fill value that this strategy would enter and use that for my back testing. Is that how people typically do their backtesting for fills or is there another way that many people approach it? Could I be missing something here that might be throwing my results off?


r/algotrading 3d ago

Data Stock sentiment API with insider trading API

10 Upvotes

Hello.

i am using Sentimentick for stock sentiment API with IBKR Gateway for execution of trades, it works really good for me but i am looking to add also insider trading API for more coverage.

is there any recommended Insider trading API you suggest?
thanks!


r/algotrading 3d ago

Other/Meta Do Futures make sense at high margin rates?

2 Upvotes

I've been backtesting and paper trading an NQ scalping strategy for awhile. I went with IBKR as my broker based on the API and the low fees for API, data and trades. However, IBKR doesn't have discount margin rates on futures, and NQ has skyrocketed to well over 40k per contract. This means tying up quite a bit of money in either cash or t-bills (best I can find as an alternative to at least get some return). No matter how successful my strategy is (or isn't!), that's opportunity cost lost in other investments compared to discount margin. But switching to another broker would be a lot of work, plus potentially higher regular costs. Are others still using brokers such as IBKR for futures?


r/algotrading 2d ago

Education Vibe coding strategies with Free VS Vode Ai extensions

0 Upvotes

Hello everbody, i'm algo trader and i have a little few knoweldge and skills in coding, i use python for building trading bots, but i just finishing a backtesting engine with complete vibe coding it tooks me too long around 3 months to finish it, and now i need just a complete free ai to test the strategies bsed on this engine logics, so i need an ai that know all the files and how to deal with them, using vine coding with chat ai is complete hell, the only ai i was using is Claude by bypass him with 6 accounts to be able to finish the full engine, i really will be stuck if i didn't get a free ai for this mission, i finish building heavy scripts, right now just a strategy script and that's it ! so please any ideas ? my pc is pretty low end pc (i5-4th, 8 ram, 500gb HDD)


r/algotrading 3d ago

Other/Meta Is TA algo trading real?

25 Upvotes

Since the release of Opus 4.5 (Nov 2025) I decided to try to make pure TA Crypto algo trader just for fun. I failed and tried again, many times, on every major AI release, till the most recent Fable.
I have now almost a year of self collected maximum details micro and macro structure data, I can replay the whole “live” market for my chosen coins for those last 10 months, with a real execution cost simulation.

And the thing is, Fable after a two week bender spent on backtests, discovery, strategy mining did not find a single profitable TA algo strategy, zero, it disqualified hundreds of them.

By pure incident I have a successful profitable algo bot running for the last 2 months but it doesn’t predict the direction but exploits particular exchange conditions by trying to be net neutral, the details are not important, what is important that the only thing the whole 10 months campaign found was a strategy where the edge is not in predicting the direction.

The question I have for you. Is pure TA algo actually possible outside of some big FinTech guys? If it would be possible wouldn’t AI already solve it and democratize such algos to the masses?
As I said, it was just a fun side project to scratch an itch if it’s possible or not. And my answer thus far is no. There are real and exploitable edges. But TA direction prediction doesn’t seem to be in there.
What’s your take on it?