How to Describe a Trading Strategy So It Can Actually Be Built
The parts of a strategy description that decide whether the resulting script works, from what to draw to the exit rules almost everyone leaves vague.
Key Takeaways
- Exits deserve more detail than entries, and usually get less.
- Say what should be drawn, or you may get a script that computes correctly and shows nothing.
- Define sessions with explicit hours and a timezone.
- Name the values you want adjustable so they become inputs rather than fixed numbers.
- A description that survives being read back to you is usually one that can be built.
A trading idea usually lives in your head as a picture. Code needs it as a sequence of decisions. Most of the gap between "this should work" and "this does not do what I meant" is in that translation, not in the language it ends up written in.
Here is what actually has to be pinned down.
Say what kind of script it is
An indicator draws things and can fire alerts. A strategy places orders and produces a backtest with trades and drawdown.
The distinction matters because it changes what the script is even capable of. If your description talks about stops, targets and position size, you want a strategy. If it marks conditions and you will trade them by hand, you want an indicator. A description that mixes the two produces something that does neither cleanly.
Define the condition precisely enough to be false
"When price breaks the range" is a picture, not a condition. The version that can be built answers:
- what defines the range, over what lookback or which session
- whether a break means a close beyond the level or any touch of it
- whether it must be the first break, or every break counts
- what invalidates it
That last one is the most useful discipline. A rule you cannot state the failure case for is usually not a rule yet.
Spend most of your detail on the exit
This is where nearly every description is thin, and it is where the results are decided.
An entry determines whether you are in a trade. The exit determines what that trade is worth. A strategy with a mediocre entry and a disciplined exit usually beats the reverse, and a single careless exit rule can invert an otherwise sound idea — a time-based exit that closes winners early while leaving losers at full stop distance will turn a positive expectancy negative.
So state, for every way a position can end:
- the stop, as a price or a distance, and whether it moves
- the target, and whether it is a multiple of risk or a level
- any condition that closes the trade regardless of stop and target
- what happens to an open position at the end of the day, week, or session
- whether a reversal signal closes the position, ignores it, or flips it
Say what you want to see on the chart
A script can compute everything correctly and display nothing. If you do not say what should be drawn, you may get output that only exists in the data window, or levels plotted on a scale so far from price that they render off screen.
Worth naming explicitly:
- the levels you want visible, and whether they should extend across history
- markers for entries and exits, and whether they sit at the price or above and below the bar
- a table or panel if you want the current state summarised
- colours, if a specific meaning is attached to them
Name the things you will want to change
Anything you expect to tune belongs in an input rather than written into the logic as a number. Lookback lengths, risk percentage, session hours, target multiples, toggles for each visual element.
The cost of getting this wrong is small but repeated: every variation you want to test becomes a source edit instead of a settings change.
Practice workflow
Turning an idea into a description that can be built
- Write the idea as you would explain it to another trader, in full sentences
- Mark every phrase that a second reader could interpret two ways
- Replace each one with something you could verify on a single bar
- Write the exit rules out separately, including the end-of-session case
- List the values you would want to adjust later, and make them inputs
- State what should be drawn on the chart and what should only be computed
Sessions and times need a timezone
"The London session" and "the first hour" are shorthand that resolve differently depending on the exchange, the chart's timezone, and the reader. Give the hours and the timezone you mean. If a session crosses midnight, say so, because that case has to be handled differently in code.
Alerts are a separate decision
If you want alerts, say when they should fire: on the condition becoming true intrabar, or only once the bar closes. Intrabar alerts arrive earlier and can un-fire if the bar reverses. Close-confirmed alerts are late but final. There is no default that suits everyone, and the difference is significant if you act on them.
What this does not fix
A complete, unambiguous description produces a script that does exactly what you asked. It does not make what you asked worthwhile. Those are separate questions, and only the second one decides whether the strategy is worth trading.
The way to answer it is not more precision in the description. It is exposure to charts you have not already studied — making the call before you know the outcome, and finding out where your reasoning was wrong rather than where your syntax was.
Review checklist
Before you consider a description finished
- Every condition can be judged true or false on a single bar
- Every way a position can close is written down, including the end of session
- Sessions and windows have explicit hours and a timezone
- The values you expect to tune are listed as inputs
- What should appear on the chart is stated, not assumed
- Read it back cold and check it still says what you meant
Next step
Replay strategy code setups inside SkillCandle
Move from reading about the setup to actually practicing it with a partial chart, replay reveal, and tracked review notes.
FAQ
Questions traders ask about this topic
What is the most commonly missing part of a strategy description?
The exit. Most descriptions define entry conditions in detail and then say something like take profit at a sensible level. Exits decide the shape of your results far more than entries do, so vagueness there produces a script that technically matches the description and performs nothing like the intent.
Do I need to say whether it is an indicator or a strategy?
It helps. An indicator draws and alerts; a strategy places orders and produces a backtest. If a description mentions entries, stops and targets, it is a strategy. If it only marks conditions on the chart, it is an indicator. Saying which one you want removes the ambiguity.
How precise do I need to be about sessions and time windows?
Precise enough to be unambiguous, which means the hours and the timezone they are in. A session defined only as the morning session means different bars to different people and different exchanges.
Should I specify which values are adjustable?
Yes. Anything you expect to tune later should be an input rather than a number written into the logic, otherwise you edit the source every time you want to test a variation.
Related Reads
Keep building the cluster
A Strategy That Compiled Perfectly and Still Lost Money
A session range break strategy that built with zero errors and finished at 0.939 profit factor. The code was fine and the exit rule was not.
Pine Script v6 Errors That Stop Your Script Compiling
The Pine v6 mistakes that actually break a TradingView build, what each error means, and the ones that compile cleanly and still draw nothing on your chart.
Break-Even Win Rate Calculator for Risk Reward [Free Tool]
See how reward-to-risk changes the win rate your setup needs just to break even, with worked examples for 1R, 2R and 3R ideas.