2016-04-28 57 views
1

我有這個類用於獲得java中的幾何布朗運動,之後我使用了我在java中獲得的值,以便生成圖形,並且我有一種感覺該公式不正確,因爲我的情節看起來像這樣。 在Java代碼是這樣的:java中的幾何布朗運動

public GeometricBrowianMotion(double s0, double mu, double sigma, double t, int N) { 
     this.s0 = s0; 
     this.mu = mu; 
     this.sigma = sigma; 
     this.t = t; 
     this.N = N; 
    } 

    public double[] simulate(RandomStream rng) { 
     double[] answer = new double[N]; 
     NormalGen ngen = new NormalGen(rng, new NormalDist()); 
     for (int i = 0; i < N; i++) { 
      answer[i] = s0 * Math.exp((mu - 0.5 * sigma * sigma) * t + sigma * Math.sqrt(t) * ngen.nextDouble()); 
     } 
     return answer; 
    } 

和劇情是這樣的[進入的形象在這裏說明] [1]

! [1]:http://i.stack.imgur.com/tFBCc.png

+0

2D的電影你有沒有有一個問題? –

+0

是的,問題是我不確定公式是否正確,我應該如何替換它以獲得逼真的幾何布朗運動,因爲它是怎麼回事,價格始終是第一個,它是作爲參數,我很確定它不好。而另一個問題是,我的第一個價格不返回 –

+0

你是什麼意思 - '價格'?你計劃什麼 - 「答案」數組? – MBo

回答

0

我以爲你的answer是一組位移,移動步驟。

,並說明布朗的議案,這將更好地提請位置 - 作爲步驟

X[i] = X0 + Sum{i=0..i} (answer[i]) 

爲了獲得良好的畫面和我計算這樣

enter image description here

+1

這不是講課大廳 - 你有任何解決方案的用戶問題? – gpasch