FINS3666 Group Assignment Part 1
Macro-Factor & Carry-Filtered Strategy for High Grade Copper (HG) Futures
Abstract
This report outlines a trading strategy utilising a 3-factor rolling regression on macroeconomic signals (US Dollar Index, China Caixin PMI and LME Copper Inventories) to forecast daily returns on High Grade Copper (HG) Futures. This signal is filtered to control term structure costs and volatility, and an Average True Range (ATR) model is included to size positions. In-sample testing revealed the model had excellent risk adjusted returns however out-of-sample testing identified areas for further improvement in the next model iteration.
1 Topic Selection
The strategy follows a two-fold system:
1. Macroeconomic Forecasting – The 3-factor regression model postulates that copper returns are subjected to the daily change in the US Dollar index (DXY), the Chinese Caixin Manufacturing PMI, and the LME Copper Inventories.
2. Risk and Cost Management – Macroeconomic forecasting signals are at risk of being wiped out by roll costs (CME Group, 2014). The following sub models have been included to avoid this risk:
a. A carry yield filter to control term structure risks (contango/backwardation)
b. An Average True Range (ATR) based position sizing model to manage a fixed-dollar risk budget
The HG Futures market represents structural inefficiencies arising from sensitivity to Chinese industrial demand, USD strength and global inventory cycles which creates predictable short-term trends. Consistent with this, a medium-frequency horizon is used for signal reliability of the regression-based forecasting. The correlation between global manufacturing sentiment and copper demand enables reliable backtesting of the strategy which exploits a potential statistical advantage through economic relationships between signals from China and changes in the US copper futures market.
It is assumed that there is no major lag structure required for the PMI and inventories, and that China continues to drive demand for copper. The model also assumes that execution costs and slippage remain stable, and that the structural relationships in the model remain consistent.
2 Data Sourcing, Processing and Analysis
2.1 Sourcing and Contract Specification
The following datasets were sourced from FactSet:
Dependent Variable:
● HG1 –COMEX HG front continuous price (forecasted by model)
To conduct back testing, First Notice Day and Daily Open, High, Low, Close and settlement data for HG Futures contracts were used
Table 1 – COMEX HG ContractSpecifications (CME Group’ 2025)
Independent Variables:
● DXY – USD Index
● PMI – China Caixin Manufacturing PMI
● STOCKS – LME Inventories On-Warrant Copper Stocks
2.2 Data Processing
The following data processing steps were completed:
1. Data Transformation – HG1, DXY and STOCKS were converted to daily log-returns and the PMI factor was converted to a daily-level change to ensure data consistency.
2. Temporal Alignment - The monthly Caixin PMI data was forward-filled to align with the rest of the data and eliminate look-ahead bias.
3. Risk and Roll Data – Contract data was acquired to create a 14-day rolling ATR for risk management. The carry-yield filter was created through a carry spread (Month 3 settlement minus Month 2 settlement).
2.3 Contextual Analysis
Figure 2 shows the 5-year front month price of copper. It is clear from the graph that it is difficult to take directional, short-term positions in copper, so the strategy trades on the drivers of daily price influence, and avoids long term directional plays.
The following relationships are formed through the average coefficients created through regression analysis:
● Copper prices fall when the USD rises (Price is US denominated)
● Copper prices fall when LME inventories rise (Oversupply)
● Copper prices rise when Chinese PMI rises (Demand Increase)
Correlation matrices of data inputs confirms these relationships. The model's R-Squared (4.71%), while low, is economically acceptable, as it identifies a legitimate edge that has profitable characteristics when treated with appropriate risk management.
3 Trading Plan Development
3.1 Entry Criteria
Signal:
A daily (directional) signal is generated from a 504-day rolling regression (see Appendix A for model definition).
Threshold:
Table 2 – Position Selection Criteria
Carry/Roll Yield Filtering:
Trade sizing is governed by this filter. The filter prevents the model from taking oversized positions into a carry cost headwind which can diminish returns (and in the worst case, wipe a position).
Table 3 – Position Sizing Criteria
3.2 Contract Selection and Rolling
● Contract – The first-deferred (M2) contract is held to avoid the delivery risk of the front-month (M1) contract
● Roll Logic – Positions are rolled five days before the M1 contract FND. This is done by closing the M2 position and opening the same position in the M3 contract.
3.3 Position Size Determination
Position sizing is dependent on the selected fixed dollar risk budget of account equity, 1% per trade. The number of contracts is calculated using the following:
1. Max Risk = 0.01 x Account Equity
2. Stop Distance Per Round = 1.5 times the 14 day ATR
3. Dollar Risk Per Contract = Stop Distance Per Pound x 25,000 Pounds
4. Base Contracts = The floor ofMax Risk divided by the Dollar Risk per Contract
5. Final Contracts = The floor ofBase Contracts times the carry filter multiplier
3.4 Exit Criteria
The position is exited once any of the following rules are satisfied:
1. Signal Reversal – the 3-factor models daily forecast moves to a neutral or opposite direction signal
2. Stop-Loss – Trailing stop-loss is triggered. The stop is 1.5 times the 14 day ATR from the entry price.
3. Forced Roll – Position is automatically exited as stipulated in the forced roll logic (s 3.2)
3.5 Trade Execution Rules
Order Types:
● All stops using stop-limit orders, since stop-market orders risk slippage in thinner markets.
● The limit offset will use the rule: Limit Band = max(4 ticks, 1.5 times the average overnight spread).
4 Backtesting
4.1 Backtest Design
The strategy was backtested over the period January 2, 2024 to December 31, 2024 using a 2-year rolling window for training. The results in Table 5 show the strategy was profitable and managed risk appropriately.
Table 4 – Backtest Results
Table 5 – Backtest Success Factors
4.2 P&L Attribution
Table 6 – P&L Component Breakdowns
The model made a directional profit of $866,000, while limiting downside risk to $-55,500, preventing roll-yield from eliminating alpha. Transaction costs were well controlled from a lower trade frequency.
4.3 Out-of-Sample Testing
The Out-of-Sample period was January 2nd, 2025 to October 31st, 2025. Performance deteriorated significantly compared to the in-sample period (2024) and did not achieve a profit. This divergence is evident across multiple performance metrics:
Table 7 – In/Out ofSample Testing Results
Figure 5 shows that the downturn in performance is not systematic, but largely due to an isolated event. This could be due to an announcement made by the Trump Administration, which would not have been a factor in the backtest period. It was found the largest losing trade in the out-of-sample backtest coincided with plans stated to introduce a tariff on copper.
Timeline of Significant Losing Trade:
● 7th of July - Short Signal → Enter position @ $7.72/lb, short 15 contracts (in 1st-deferred month as per strategy)
● 8th of July - President Trump made the statement: "I believe the tariff on copper, we're going to make it 50 per cent " (WEF, 2025)
○ Copper price from $7.72 → $8.72 from supply shock
○ Price gapped through stop-limit, but not filled
● 14th of July - Signal Reversal causes exit @ $8.47
○ Biggest loss in the period - $281,250.
Figure 6 shows multiple large price movements, Trump’s tariff statement being the most adverse to the strategy. While performing well in normal circumstances, the out-of-sample testing reveals vulnerabilities in abnormal conditions. In this case, a single position has entirely diminished profitability when a price shock has gapped the stop-loss.
4.4 Evaluation
The strategy had excellent risk adjusted returns from the high Sharpe ratio and low drawdown, and successful win rates and profit factors. However, critical evaluation highlights three weaknesses:
1. Signal Reluctance – The model had no position 55.2% of the time. This indicates an overly conservative signal threshold which potentially misses profitable trades.
2. Stop-Loss Gap Risk – The strategy's ATR-based stop-loss mechanism is ineffective against overnight news-driven price gaps. This gap risk, combined with maximum position sizing, transforms protective stops into catastrophic losses, particularly when the regression model cannot anticipate exogenous policy shocks.
3. Event Driven Risk – The model is a fair weather strategy. Out-of-sample testing contained huge external shocks (Trump Tariffs (WEF, 2025), Grasberg Mine Collapse (Reuters, 2025)). This revealed the model is blind to unforeseeable black-swan events.
5 Conclusion
The initial strategy has proven to be successful since the model was able to create a profitable, risk-managed signal, that created returns in excess of the market, in fair weather conditions.
The model will be refined in the following areas to be more adaptable to volatile conditions:
1. Parameter Optimisation – Tweak signal threshold values to see how the model behaves when it has tighter threshold values which encourage more market participation
2. Integrate a Regime Filter – Circuit breakers will be implemented to reduce black-swan risk. Two potential filters will be introduced:
a. Further refined contango/backwardation Filter – Block all long/short signals if the M1 price deviates significantly from the M2 price, indicating supply shocks
b. Volatility Filter – Block all long/short signals if the short term volatility (5 day ATR) is a certain multiple above the long term (100 day ATR), indicating an external shock
6 Acknowledgements
This report was developed with the assistance ofgenerative AI (ChatGPT, Claude, Google Gemini) to produce code.
References
AKRAM, Q. F. 2009. 'Commodity prices, interest rates and the dollar'. Energy Economics, vol. 31, no.6, pp. 838-851, DOI:https://doi.org/10.1016/j.eneco.2009.05.016.
ARROW FUNDS. 2019. 'Contango & Cash'. viewed 5/11/2025,
<https://arrowfunds.com/default.aspx?menuitemid=283&AspxAutoDetectCookieSupport= 1>.
CME GROUP. 2014. 'Deconstructing Futures Returns: The Role ofRoll Yield'. viewed 4/11/2025, <https://www.cmegroup.com/education/files/deconstructing-futures-returns-the-role-of-roll- yield.pdf>.
CME GROUP. 2025. 'Copper Futures - Contract Specs'. viewed 5/11/2025,
<https://www.cmegroup.com/markets/metals/base/copper.contractSpecs.html>.
GORTON, G., HAYASHI, F. & ROUWENHORST, K. 2007. 'The Fundamentals ofCommodity Futures Returns'. Review ofFinance, vol. 17 DOI: 10.1093/rof/rfs019.
GUO, J. 2018. 'Co-movement ofinternational copper prices , China ' s economic activity , and stock returns : Structural breaks and volatility dynamics'. vol. DOI:
https://doi.org/10.1016/j.gfj.2018.01.001
REUTERS. 2025. 'Grasberg disaster highlights fragility of copper supply chain'. viewed 7/11/2025, <https://www.reuters.com/markets/commodities/grasberg-disaster-highlights-fragility-copper
-supply-chain-2025-09-29/>.
WORLD ECONOMIC FORUM. 2025. 'Copper: What happens if the market for a crucial metal in short supply is hit with tariffs?'. viewed 7/11/2025,
<https://www.weforum.org/stories/2025/07/what-happens-trump-copper-tariffs/>.
7 Appendix A - Parameter Definitions
HG₁,ₜ = α + β₁(DXYₜ) + β₂(PMIₜ) + β₃(STOCKSₜ) + εₜ
Dependent Variable:
● HG₁,ₜ: The forecasted dependent variable; the daily log-return of the HG front-month continuous contract price:
Independent Variables (Factors):
● DXYₜ: The currency factor; the daily log-return of the US Dollar Index (DXY). A negative β₁ is expected, as a stronger dollar typically reduces demand for copper (Akram, 2018).
● PMIₜ: The demand factor; the daily change in the forward-filled China Caixin Manufacturing PMI (Guo, 2018).
● STOCKSₜ: The supply factor; the daily log-return of on-warrant LME copper inventories (Gorton et al., 2007)
Model Coefficients:
● α (Alpha): The base-case daily return if all factors are zero.
● β₁, β₂, β₃ (Betas): The model's coefficients, re-calculated daily.
● εₜ (Error Term): Copper's return not explained by the model (idiosyncratic events).