Today, we create a Stock Trading System Benchmark Indicator using the SPDR S&P 500 Exchange Traded Fund (ETF) (Symbol: SPY).
In finance, the benchmark performs the function of an external reference parameter for the valuation of a particular and specific market segment.
ETF SPY | Buy & Hold Stock Trading System Strategy Benchmark
Before comparing the stock trading system, let’s see how to build a buy and hold indicator.
Our stock trading system benchmark is the classic buy and holds strategy.
First, I determine the amount of Capital, and I continue to buy the ETF SPY for the same amount and keep it for the entire duration of my strategy.
Here is what our chart of SPDR S&P 500 ETF SPY looks like with the buy and hold display:

For example, if I had purchased $ 10,000 of SPY stocks at the beginning of 2007 and sold it at the end of 2017, I would have earned $ 8,718.
This is classic and dated investment mode. Today we have to stay less time in the market, firstly to avoid an event like a flash crash.
Many times the buy and hold strategy works better, but often leads to bigger drawdowns. For example, in 2008, we had a huge drawdown.
We created a Stock Trading System Benchmark Indicator that shows two trend lines.
The Benchmark Indicator
To test it, we’re using a stock trading system strategy with a capital of $ 10,000. As you can see with risk control, I would have earned almost $ 6,000 with only 80 transactions and therefore using less capital and certainly stay less time fully invested in the market.

Visually, the strategy in question, despite having gained just over half of the time, significantly beat the benchmark in both the drawdown and the capital employed.
This is the Stock Trading System Benchmark Indicator‘s code in EasyLanguage and PowerLanguage for TradeStation and Multicharts:
Input: Money(10000);
vars:
First_Close(0),
color(white),
BenchMark(0),
N_contracts(0),
C_contracts(0);
If First_Close = 0 then
Begin
First_Close = Close;
C_contracts = (Money/Close);
N_contracts = round(C_contracts,0);
End;
BenchMark = N_contracts*(Close - First_Close);
Plot1( BenchMark, "BenchMark",color,0,3 );
This is the Equity Line Indicator’s code in EasyLanguage and PowerLanguage for TradeStation and Multicharts:
Vars:
Equity(0),
Color(Red);
Equity = (I_ClosedEquity);
If Equity > 0 then
Color = Green;
If Equity < 0 then
Color = Red;
Plot1( Equity,”Equity”,Color ) ;
- Some resources are insight:
- INVESTOPEDIA: Benchmark
- INVESTOPEDIA: SPY: SPDR S&P 500 Trust ETF
More from Finance Strategy System
How the Stock Market Moves(Opens in a new browser tab)
PowerLanguage and EasyLanguage Tutorial – The Bollinger Bands
SuperTrend Indicator – 2020 Guide – MultiCharts & TradeStation Download
How To (AUTO) Trade Divergences
EasyLanguage & PowerLanguage Tutorial – The Inputs
Automated Trading System || The Essential Tutorial for Dummies
EasyLanguage & PowerLanguage Tutorial – The Bars
MULTICHARTS BACKTESTING TUTORIAL
Ichimoku Indicator | Ichimoku Kinko Hyo | Tutorial
The TRIX || Triple Exponential Average Indicator || Tutorial