In my current backtesting, I am using log returns as a proxy for simple returns via the relationship $\ln(1 + r) \approx r$ for small enough r. This gives me wonderful properties like time additivity, so that calculating rolling returns is as simple as applying a cumulative sum of the historical log returns.

This works for stocks, where the value of the stock is the dollar value of the security. However this is not true for futures. Take corn for example: corn trades at $12.5 per point.

In my thinking then, the close-to-close log return would not accurately represent the profit and loss of a portfolio. Instead, I think that calculating the delta in point value between two close values and applying that to your starting capital is a better method. Here is an example:

Given two days of data (for corn):

  1. 764.3600814
  2. 754.7100857

The log return is simple -

$ln(754.7100857) - ln(764.3600814) = -0.012705306$

So we lost money. But we are in futures, so this return is misleading. On a starting capital of \$10,000 our account is now worth \$9872.94694.

But if we calculate the point delta ($-9.64999577$) we see our starting capital has been reduced to \$9879.375 calculated with ($10000 + (12.5 * -9.64999577))$.

The error between the two is significant in the sense that over the course of thousands of rows of data the error could accumulate to quite a large sum.

Which of these is the preferred method for calculating returns on futures? I feel like the point value is the most accurate, but it complicates backtesting in that you need to base all returns on "capital returns" rather than just mindlessly summing your log returns.

  • $\begingroup$ corn futures have notional underlying values. Some people trade corn futures not to speculate but actually buy or sell physical quantities of corn with an associated settlement of physical USD. you should use this. If you want an answer to a more esoteric question, check this link... quant.stackexchange.com/questions/41443/… $\endgroup$
    – Attack68
    Oct 6, 2018 at 6:01
  • $\begingroup$ @Attack68, that may be the case for my corn example - but what about something like /ES? Wouldn't the point delta method be better because it includes the intrinsic leverage in the contract (under the assumption you dont take delivery on any contract...I suppose). $\endgroup$
    – CL40
    Oct 6, 2018 at 17:03
  • 1
    $\begingroup$ leverage is at your discretion. If you have \$20k and you sell 1 ES future do you record the same return as if you have \$100k and sell 1 ES future? Now you have the pertinent question about what you are using the data for. On the one hand if you are analysing market movements and correlation then you should not factor your leverage at all - remain standardised across products. If you considering daily returns from your portfolio's VaR perspective then your initial capital is entirely relevant and depends on the precise allocation of capital to each product. $\endgroup$
    – Attack68
    Oct 6, 2018 at 17:14
  • $\begingroup$ A reasonable simplifying assumption IMHO is that you initially put up cash to fully cover the notional value of the contract (no leverage). Then the point change correctly measures the P&L on your investment. $\endgroup$
    – Alex C
    Oct 6, 2018 at 17:16
  • $\begingroup$ Ah that makes sense. I guess I hadn't thought about either of these points. In backtesting a strategy I think the "portfolio method" @Attack68 mentions is right for that? However, since I could set capital limits on my backtesting I could simply set the capital in the account equal to the notional of one contract and then use the log returns directly. That simplifies my life and keeps things consistent in my head. If either of you would put this in an answer I'd happily provide the green check. $\endgroup$
    – CL40
    Oct 6, 2018 at 17:38

2 Answers 2


When you do backtesting it is much better to keep track of your daily $ pnl, not the daily returns. Then all your problems disappear. All you need to do in the case of futures is keep track properly of your costs in addition to mark-to-market eg financing costs for your margin account, rolls etc..

Measuring everything in actual $ ensures you are indeed self-financing (eg: making sure rolls are treated correctly in the case of futures but also that corporate actions are properly accounted for in the case of stocks say) and you calculate ROE only by comparing your overall pnl with your initial capital at risk.


Performance in futures is typically determined based on price per point/tick. Obviously, tick size varies by contract, so it tends to be easier to calculate PnL for individual positions and calculate any performance stats based on PnL per some reference capital allocation (eg, PnL of \$4,000 for \$100,000 book = 4% return).

Log (natural log) returns are only really used in equities.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.