Back to all projects

Agro-Commodities Trading Research


Agricultural commodities expose lot's of trading opportunities due to its big volumes and volatility spikes. The most actively traded contracts are CBOT SRW Wheat, CBOT Corn and CBOT Soybean futures. There are various factors which may affect agricultural futures prices: demand and supply, weather, planting cycle and crop conditions, dollar index value, cost of shipment, etc. As a result, there are various opportunities for machine learning algorithms to analyze interactions between various factors in order to generate predictive signals trading wheat, corn and soybeans. One of our clients is a CTA specializing in agricultural commodities trading. In February 2020, we started a research project. The idea of the research is to apply machine learning to predict the impact of WASDE report publication on CBOT SRW Wheat and Corn futures prices.

WASDE Report

World Agricultural Supply and Demand Estimates (WASDE) is a report which is published by the United States Department of Agriculture (USDA) on a monthly basis. Report’s announcement often leads to a significant change in agricultural commodities prices and short-term price trends. The report contains information about average farm price, expected and estimated imports/exports, production, total domestic consumption, etc. WASDE report contains over 3000 features which may predict short-term commodity price trends, however, only a few of them may be informative for prediction.

Feature generation

Our software engineering team parsed all WASDE reports in order to generate possible features used in our algorithms. We have also added features which reflect information about the cost of shipment, the dollar index, weather and crop condition. The next step was to apply financial machine learning algorithms to extract the most informative features out of thousands of features generated from various reports and index values. On the final stage, we have presented the client the most informative features and how the algorithm generates the final prediction based on feature values. As we follow the white-box approach in our research, there is a clear explanation behind each feature and understanding how a feature value may impact the model forecast.

Optimal trading rules detection

In order to achieve high risk-adjusted performance, our team also had to detect optimal trading rules (fix profit, stop-loss and maximum time in a position). In order to avoid curve fitting, we've generated synthetic asset prices of agricultural commodities. (in one of our projects we explain why one should use synthetic paths in optimal trading rules detections Optimal Trading Rules Detection project



Despite the fact that the strategy is low-frequency trading our team still used tick data in strategy backtesting to get the most accurate execution estimate. We used our proprietary backtesting platform to loop through reports, train ML model, generate trend predictions and model execution fix-profit/stop-loss on tick data from 2014 till April 2020. Using tick data is extremely important in volatile markets such as SRW Wheat and Corn.

Backtest results

WASDE Wheat Strategy:

  • Average YoY return: 29%
  • Maximum Daily Drawdown: -22.5%
  • Sharpe ratio: 3.03


WASDE Corn Strategy:

  • Average YoY return: 23%
  • Maximum Daily Drawdown: -12.2%
  • Sharpe ratio: 2.97


Back to all projects