You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

三因子期权定价Monte Carlo Euler离散化偏差问题排查求助

Monte Carlo Dynamics Issues in Your Code

Here are the key suspicious points in your implementation that likely cause the underpricing:

  • Static State Variable Calculation: Your code computes r, rf, v, and Q using only initial values (r_0, v_0, etc.) for all time steps, instead of iterating through each step to update variables dynamically. Euler-Maruyama requires updating each state variable at every time step using the previous step's value. For example:

    • The r process should be built incrementally: r(:,t) = r(:,t-1) + p.alpha1*(p.beta1 - r(:,t-1))*dt(t) + p.eta1*sqrt(dt(t))*... (using the prior r value, not r_0 for all steps).
    • Same for v: you’re using sqrt(v_0) in every shock term, but it should be sqrt(max(v(:,t-1), 0)) to update volatility path-by-path.
  • Incorrect Delta Process Dynamics: The delta process is defined as delta = delta0_vals(i) + delta0_vals(i)*Q, but Q uses static initial values instead of the dynamic paths of r, rf, and v. Typically, an exchange rate-like delta process follows an SDE like dδ/δ = (r - rf)dt + sqrt(v)dW1 + ξ1 r dW2 + ξ2 rf dW3—your current drift and shock terms don’t incorporate time-varying r(t) and rf(t) from each path.

  • Discounting Error: You’re using a single zero-coupon bond (ZCB) value computed from r_0 to discount all payoffs. In Monte Carlo, each path’s payoff should be discounted using the path-specific integral of the short rate: exp(-sum(r(:,1:n).*dt)) for each simulation. Using a fixed ZCB ignores the stochastic nature of the domestic rate, leading to incorrect discounting.

  • Low Simulation Count: M=1000 is a small number of Monte Carlo paths, which can introduce significant sampling noise. While this might not explain systematic underpricing, increasing M (e.g., to 10,000 or 100,000) would help confirm if the bias stems from discretization or sampling error.

These issues are not just expected discretization bias—they’re fundamental mistakes in implementing the Euler-Maruyama scheme for multi-factor stochastic processes. Fixing the dynamic iteration of state variables and path-dependent discounting should align your results with the paper.

内容的提问来源于stack exchange,提问作者Umberto Mannello

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 07:20:03