⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jumpcallhedgestatistics.java

📁 金融资产定价,随机过程,MONTE CARLO 模拟 JAVA 程序和文档资料
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
        jPanel3.add(jLabel7);        jSlider8.setMaximum(500);        jSlider8.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {            public void mouseDragged(java.awt.event.MouseEvent evt) {                jSlider8MouseDragged(evt);            }        });        jPanel3.add(jSlider8);        jSlider9.setMaximum(2000);        jSlider9.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {            public void mouseDragged(java.awt.event.MouseEvent evt) {                jSlider9MouseDragged(evt);            }        });        jPanel3.add(jSlider9);        jSlider10.setMaximum(20000);        jSlider10.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {            public void mouseDragged(java.awt.event.MouseEvent evt) {                jSlider10MouseDragged(evt);            }        });        jPanel3.add(jSlider10);        jPanel3.add(jLabel8);        jSlider11.setMaximum(200);        jSlider11.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {            public void mouseDragged(java.awt.event.MouseEvent evt) {                jSlider11MouseDragged(evt);            }        });        jPanel3.add(jSlider11);        jSlider12.setMaximum(200);        jSlider12.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {            public void mouseDragged(java.awt.event.MouseEvent evt) {                jSlider12MouseDragged(evt);            }        });        jPanel3.add(jSlider12);        jSlider13.setMaximum(50);        jSlider13.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {            public void mouseDragged(java.awt.event.MouseEvent evt) {                jSlider13MouseDragged(evt);            }        });        jPanel3.add(jSlider13);        jSlider14.setMaximum(50);        jSlider14.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {            public void mouseDragged(java.awt.event.MouseEvent evt) {                jSlider14MouseDragged(evt);            }        });        jPanel3.add(jSlider14);        jPanel3.add(jLabel9);        jButton1.setText("go");        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {            public void mouseClicked(java.awt.event.MouseEvent evt) {                jButton1MouseClicked(evt);            }        });        jPanel3.add(jButton1);        jSplitPane2.setRightComponent(jPanel3);        jPanel1.add(jSplitPane2, "card2");        jPanel4.setLayout(new java.awt.BorderLayout());        jProgressBar1.setPreferredSize(new java.awt.Dimension(148, 20));        jProgressBar1.setDoubleBuffered(true);        jProgressBar1.setStringPainted(true);        jPanel4.add(jProgressBar1, java.awt.BorderLayout.NORTH);        jTextField15.setEditable(false);        jTextField15.addActionListener(new java.awt.event.ActionListener() {            public void actionPerformed(java.awt.event.ActionEvent evt) {                jTextField15ActionPerformed(evt);            }        });        jPanel4.add(jTextField15, java.awt.BorderLayout.SOUTH);        jTextArea2.setEditable(false);        jTextArea2.setBackground((java.awt.Color) javax.swing.UIManager.getDefaults().get("textHighlight"));        jScrollPane2.setViewportView(jTextArea2);        jPanel4.add(jScrollPane2, java.awt.BorderLayout.CENTER);        jButton2.setText("OK");        jButton2.addMouseListener(new java.awt.event.MouseAdapter() {            public void mouseClicked(java.awt.event.MouseEvent evt) {                jButton2MouseClicked(evt);            }        });        jPanel4.add(jButton2, java.awt.BorderLayout.EAST);        jPanel1.add(jPanel4, "card3");        jSplitPane1.setRightComponent(jPanel1);        getContentPane().add(jSplitPane1);        pack();                setTitle("Call-Hedge statistics");        setBounds(5,50,670,500);    } // end constructor    private void jTextField15ActionPerformed(java.awt.event.ActionEvent evt) {        // Add your handling code here:    }    private void jCheckBox3MouseClicked(java.awt.event.MouseEvent evt) {        quotient_deltas=true;    }    private void jButton2MouseClicked(java.awt.event.MouseEvent evt) {        CardLayout card=(CardLayout)jPanel1.getLayout();        card.next(jSplitPane2.getParent());    }    private void jCheckBox2MouseClicked(java.awt.event.MouseEvent evt) {        monte_carlo_deltas=true;    }    private void jCheckBox1MouseClicked(java.awt.event.MouseEvent evt) {        minimum_variance_deltas=true;    }    private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {                mainComputation();  //see bottom    }    private void jSlider10MouseDragged(java.awt.event.MouseEvent evt) {        nBranch=jSlider10.getValue();        jTextField10.setText("Number of branches per path = "+nBranch);    }    private void jSlider9MouseDragged(java.awt.event.MouseEvent evt) {        nPaths=jSlider9.getValue();        jTextField9.setText("Number of paths = "+nPaths);     }    private void jSlider8MouseDragged(java.awt.event.MouseEvent evt) {        dt=(double)jSlider8.getValue()/1000;        T=(int)Math.round(Tc/dt);        jTextField8.setText("Rehedge interval (years) = "+dt);     }    private void jSlider7MouseDragged(java.awt.event.MouseEvent evt) {        r=(double)jSlider7.getValue()/100;        jTextField7.setText("Risk free rate = "+r);     }    private void jSlider6MouseDragged(java.awt.event.MouseEvent evt) {        Tc=(double)jSlider6.getValue()/1000;        T=(int)Math.round(Tc/dt);        jTextField6.setText("Time to expiration (years) = "+Tc);     }    private void jSlider5MouseDragged(java.awt.event.MouseEvent evt) {        K=1.0*jSlider5.getValue()/100;        jTextField5.setText("Strike = "+K);    }    private void jSlider4MouseDragged(java.awt.event.MouseEvent evt) {        q=(double)jSlider4.getValue()/100;        jTextField4.setText("Dividend yield = "+q);     }    private void jSlider3MouseDragged(java.awt.event.MouseEvent evt) {         sigma=(double)jSlider3.getValue()/100;        jTextField3.setText("Volatility = "+sigma);     }    private void jSlider2MouseDragged(java.awt.event.MouseEvent evt) {         mu=(double)jSlider2.getValue()/100;        jTextField2.setText("Market drift = "+mu);     }    private void jSlider1MouseDragged(java.awt.event.MouseEvent evt) {        S_0=(double)jSlider1.getValue()/100;        jTextField1.setText("S(0) = "+S_0);     }    private void jSlider14MouseDragged(java.awt.event.MouseEvent evt) {                triggerPercent=jSlider14.getValue();        jTextField14.setText        ("% price change triggering hedge trade = "+triggerPercent);    }    private void jSlider13MouseDragged(java.awt.event.MouseEvent evt) {                nHedgeTrades=jSlider13.getValue();        jTextField13.setText        ("Number hedge trades (periodic hedge) = "+nHedgeTrades);    }    private void jSlider11MouseDragged(java.awt.event.MouseEvent evt) {                fixed_trc=1.0*jSlider11.getValue()/1000;        jTextField11.setText("Fixed transaction cost = "+fixed_trc);    }    private void jSlider12MouseDragged(java.awt.event.MouseEvent evt) {                prop_trc=1.0*jSlider12.getValue()/1000;        jTextField12.setText("Proportional transaction cost = "+prop_trc);    }                     /** Exit the Application */    private void exitForm(java.awt.event.WindowEvent evt) {        System.exit(0);    }    /**    * Initialize defaults, show main window    */    public static void main(String args[]) {                       //set defaults in case user does not choose        T=20;        dt=0.05;        Tc=T*dt;        nPaths=500;        nBranch=5000;        nHedgeTrades=12;        triggerPercent=5;               S_0=50;        mu=0.3;        sigma=0.2;        q=0.0;        r=0.05;                K=55;                         minimum_variance_deltas=false;        monte_carlo_deltas=false;        quotient_deltas=false;                JumpCallHedgeStatistics        window=new JumpCallHedgeStatistics();               jCheckBox1.setSelected(false); //minimum variance deltas: no        jCheckBox2.setSelected(false); //monte carlo deltas: no        jCheckBox3.setSelected(false); //quotient deltas: no                jTextField14.setText        ("% price change triggering hedge trade = "+triggerPercent);        jTextField13.setText        ("Number hedge trades (periodic hedge) = "+nHedgeTrades);        jTextField12.setText                                ("proportional transaction cost="+prop_trc);        jTextField11.setText                                ("Fixed transaction cost = "+fixed_trc);        jTextField10.setText                                ("Number of branches per path = "+nBranch);        jTextField9.setText("Number of paths ="+nPaths);         jTextField8.setText("Time step (years) ="+dt);         jTextField4.setText("Dividend yield ="+q);         jTextField3.setText("Volatility ="+sigma);         jTextField2.setText("Market drift ="+mu);         jTextField1.setText("S(0) ="+S_0);         jTextField7.setText("Risk free rate ="+r);         jTextField6.setText("Time to expiration (years) = "+Tc);         jTextField5.setText("Strike K = "+K);        jSplitPane2.setVisible(true);        window.show();    }    // Variables declaration - do not modify    private static javax.swing.JSlider jSlider4;    private static javax.swing.JSlider jSlider3;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -