# Calculate YTM and Modified Duration

## Prerequisites

We assume you have all prerequisites you may need, including:

1. [Get Access to Finmars](https://docs.finmars.com/books/user-quick-start/page/get-access-to-finmars)
2. [Link with Finmars ID](https://docs.finmars.com/books/user-quick-start/page/link-with-finmars-id "https://docs.finmars.com/books/user-quick-start/page/link-with-finmars-id")
3. [Install PMS Core or PMS Plus add-on](https://docs.finmars.com/books/user-quick-start/page/install-pms-core-or-pms-plus-add-on)
4. [How to Import Files in PMS Core and PMS Plus](https://docs.finmars.com/books/user-quick-start/page/import-files-in-pms-core-and-pms-plus "How to Import Files in PMS Core and PMS Plus")

## When to use

It's expected that all calculations are run by respected workflows and or pipelines, but sometimes there is a time you need to run it manually, the most frequent cases are:

1. You made **manual edits in the data** that will affect YTM and Modified Duration - this WILL NOT be automatically recalculated;
2. You **unchecked calculation options** in the PMS Core/PMS Plus and/or other add-ons and/or pipelines;

## Calculate YTM and Modified Duration

1. Go to **Add-ons -&gt; PMS** here go to the **Helper** tab and open **Calculate Price History** section.  
    [![image.png](https://docs.finmars.com/uploads/images/gallery/2025-09/scaled-1680-/gFUimage.png)](https://docs.finmars.com/uploads/images/gallery/2025-09/gFUimage.png)
2. **Fill in parameters** according to their **info** (**"i"** icon close to the parameter's name).
3. Click **Run**.
4. Confirm parameters and click **Run** again.  
    [![image.png](https://docs.finmars.com/uploads/images/gallery/2025-09/scaled-1680-/FoEimage.png)](https://docs.finmars.com/uploads/images/gallery/2025-09/FoEimage.png)
5. In the right frame you will have execution info, click **Refresh** to get updates.  
    [![image.png](https://docs.finmars.com/uploads/images/gallery/2025-09/scaled-1680-/tDDimage.png)](https://docs.finmars.com/uploads/images/gallery/2025-09/tDDimage.png)
6. **Refresh** and read **Log** and wait for **Result**. See successful run example below:   
    [![image.png](https://docs.finmars.com/uploads/images/gallery/2025-09/scaled-1680-/8vJimage.png)](https://docs.finmars.com/uploads/images/gallery/2025-09/8vJimage.png)