✨ Visual Editor

close

Thread Truncated

Only the first 20 tweets are shown to ensure high-quality rendering and prevent image size issues.

palette Canvas & Background

Gradient:arrow_forward
Text Color:
135°

style Card Style

40px
16px

text_fields Typography

16px
Horizon
@horizon_trade_x
Your backtest looked flawless. You went live. Two weeks later, the strategy was bleeding. Every quant has lived this. The answer is a loop: generate a strategy, test it, score it, feed the result back, and run it again until one survives out-of-sample.
Thread image
Horizon
@horizon_trade_x
Let's get straight to it.
Horizon
@horizon_trade_x
>Bookmark this. We are the team behind Horizon, the platform that lets you type a trading strategy in plain English, backtest it in minutes, and deploy it live to your exchange. Loop engineering is the method behind that flow. Currently in closed beta. Join the waitlist at horizon.trade or DM @horizon_trade_x for early access.
Horizon
@horizon_trade_x
That strategy died because it was one guess with nothing iterating on it. A single pass gives you a single attempt, and the first attempt is rarely the edge. The loop turns that one attempt into a search: each round keeps the variants that scored well and feeds the rest back in for refinement. We are going to break down how that loop works, the math that closes it, and the one step that separates a real edge from faster overfitting.
Horizon
@horizon_trade_x
## Here is the roadmap:
Horizon
@horizon_trade_x
• Why one prompt never finds the edge
Horizon
@horizon_trade_x
• The loop that compounds, and the math that scores it (IC, ICIR, half-life)
Horizon
@horizon_trade_x
• The one step that separates a real edge from faster overfitting
Horizon
@horizon_trade_x
• How to run the whole loop without fooling yourself
Horizon
@horizon_trade_x
• Where Horizon runs end-to-end
Horizon
@horizon_trade_x
## Why one-shot prompting stalls
Horizon
@horizon_trade_x
A single prompt gives you a single guess. The model returns a generic factor, you backtest it, and it usually fails, because the first idea is rarely the edge. Without a loop, every attempt starts from scratch and nothing compounds. The whole edge is in the iteration, and one-shot prompting has none of it.
Horizon
@horizon_trade_x
## What loop engineering actually is
Horizon
@horizon_trade_x
Loop engineering is a closed cycle: generate a hypothesis, test it, score it against a clear objective, read why it failed, and feed that back into the next generation. The shape is perceive, reason, act, observe, repeat. Each pass is cheap, and the system gets sharper because every result narrows the search. What matters is the process, because it turns dozens of mediocre attempts into one that holds up. This is the loop we built Horizon to run end to end.
Horizon
@horizon_trade_x
## The metric that closes the loop
Horizon
@horizon_trade_x
A loop without a scoring function just wanders. The standard objective in factor research is the information coefficient: the correlation between a factor's values today and the returns that follow, IC = corr(factorₜ, returnₜ₊₁). A single IC reading is noisy, so the number that actually matters is its consistency over time, the ICIR: ICIR = mean(IC) / std(IC). A factor with a modest but steady IC beats a flashy one that works once and breaks. The ICIR is what the loop optimizes toward.
Horizon
@horizon_trade_x
## The decay check most people skip
Horizon
@horizon_trade_x
Even a real factor has a shelf life. You can measure it: fit the signal's persistence as an AR(1) process and read its half-life, t½ = -ln(2) / ln(ρ), where ρ is how strongly the factor carries from one period to the next. A half-life of 50 days is a slow, tradeable edge. A half-life of two days means you are paying costs to chase noise. A good loop rejects short-half-life factors automatically.
Horizon
@horizon_trade_x
Thread image
Horizon
@horizon_trade_x
## The step that separates edge from overfitting
Generated by Thread Navigator
100%
view_carousel Carousel Studio NEW
Press + S to quick-export