搜尋
首頁Javajava教程具有 Corticon 的內部收益率求解器

內部報酬率

使用 Corticon 的迭代執行功能,我們可以解決需要求解最佳答案的計算。

內部報酬率(IRR)是一種財務指標,用於評估投資的獲利能力和機會成本等。一個典型的用例是評估是否進行以下投資:

  • 初始費用(投資成本)$5000
  • 第 1 年 - 0 美元回報
  • 第 2 年 - 2000 美元回報
  • 第 3 年 - 0 美元回報
  • 第 4 年 - 4000 美元回報
  • 第 5 年 - 0 美元回報
  • 第 6 年 - 9000 美元回報

內部報酬率透過以下公式求解:

Internal Rate of Return Solver with Corticon

代入我們的數字,我們有:

~0 = (0/(1 IRR)^1 2000/(1 IRR)^2 0/(1 IRR)^3 4000/(1 IRR)^4 0/(1 IRR)^5 9000/( 1 IRR)^6) - 5000

我們正在尋求淨現值 (NPV) 為零(或盡可能接近 X 個小數點)的 IRR。因此,我們需要反覆嘗試不同的 IRR 值,以盡可能接近零。

規則

首先,我們的規則詞彙。

Internal Rate of Return Solver with Corticon

我們有 3 個實體,候選人、現金流和根實體,投資。該投資有任意數量的現金流,我們將對其進行評估。它還具有在決策執行期間創建的任意數量的候選者,代表將插入的各種費率。

輸入將只是母實體投資,以及所有相應的現金流量和標記其順序的分期付款編號。第一個現金流量始終是現金流出,因此其金額始終為負。它將使用值 0 作為其分期付款編號。

接下來是我們的規則。

  • 我們首先初始化 IRR 值,該值將根據產生的 NPV 向上或向下遞增。我們同樣會將初始現金流量的值放入投資實體的「本金」屬性中,然後刪除該現金流量,以便更輕鬆地僅對未來流量進行操作。

Internal Rate of Return Solver with Corticon

  • 我們將把第一個規則表拖曳到一個新的規則流上,該規則流稍後將產生到執行時間決策服務中。規則流可以包含任意數量的規則表和任意數量的「嵌入」規則流。我們將建立一個包含另外兩個規則表的嵌入式規則流,並在透過從規則流托盤中應用「迭代」選項來嘗試候選 IRR 率時循環遍歷此嵌入式規則流。

Internal Rate of Return Solver with Corticon

  • 當規則流上的物件設定為迭代時,它將重複重新執行,直到物件規則派生的值停止變更。一旦物件中的值停止更改,迭代就會停止並繼續執行下一個物件(由連接器決定)。
  • 在內部規則流中,我們有兩個規則表。

Internal Rate of Return Solver with Corticon

  • 第一個將計算每個單獨的現金流量對最終計算的貢獻 - 例如,現金流量 3 的「部分」屬性將是 0/(1 IRR)^3 的結果。

Internal Rate of Return Solver with Corticon

  • 嵌入規則流中的第二個規則表將:
    • 將 Investment.npv 設定為每個現金流量部分減去初始投資的總和
    • 如果 npv 大於零,則將 irr 增加 0.01,如果小於零,則減少 0.01。
    • 但是,我們需要知道我們是否已經嘗試過給定的速率,這樣我們就不會陷入無限循環。這就是候選人發揮作用的地方。我們為嘗試的每個速率建立一個新的候選者,直到遇到已經嘗試過的速率,此時不會觸發任何操作,我們會傳回計算值。

Internal Rate of Return Solver with Corticon

針對頂級規則流進行測試,我們根據上面列出的 5000 美元投資的用例設定輸入。我們看到 Corticon 的 IRR 為 0.27 (27%)。

Internal Rate of Return Solver with Corticon

當我們使用ruletrace 執行規則測試時,我們可以看到Corticon 如何使用每個調整後的利率循環執行規則,直到投資的NPV 盡可能接近零。

Internal Rate of Return Solver with Corticon

規則追蹤資料也可以匯出為 CSV。

Internal Rate of Return Solver with Corticon

從 GitHub 下載專案

以上是具有 Corticon 的內部收益率求解器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Java的類負載機制如何起作用,包括不同的類載荷及其委託模型?Java的類負載機制如何起作用,包括不同的類載荷及其委託模型?Mar 17, 2025 pm 05:35 PM

Java的類上載涉及使用帶有引導,擴展程序和應用程序類負載器的分層系統加載,鏈接和初始化類。父代授權模型確保首先加載核心類別,從而影響自定義類LOA

如何使用咖啡因或Guava Cache等庫在Java應用程序中實現多層緩存?如何使用咖啡因或Guava Cache等庫在Java應用程序中實現多層緩存?Mar 17, 2025 pm 05:44 PM

本文討論了使用咖啡因和Guava緩存在Java中實施多層緩存以提高應用程序性能。它涵蓋設置,集成和績效優勢,以及配置和驅逐政策管理最佳PRA

如何在Java中實施功能編程技術?如何在Java中實施功能編程技術?Mar 11, 2025 pm 05:51 PM

本文使用lambda表達式,流API,方法參考和可選探索將功能編程集成到Java中。 它突出顯示了通過簡潔性和不變性改善代碼可讀性和可維護性等好處

如何將JPA(Java持久性API)用於具有高級功能(例如緩存和懶惰加載)的對象相關映射?如何將JPA(Java持久性API)用於具有高級功能(例如緩存和懶惰加載)的對象相關映射?Mar 17, 2025 pm 05:43 PM

本文討論了使用JPA進行對象相關映射,並具有高級功能,例如緩存和懶惰加載。它涵蓋了設置,實體映射和優化性能的最佳實踐,同時突出潛在的陷阱。[159個字符]

如何將Maven或Gradle用於高級Java項目管理,構建自動化和依賴性解決方案?如何將Maven或Gradle用於高級Java項目管理,構建自動化和依賴性解決方案?Mar 17, 2025 pm 05:46 PM

本文討論了使用Maven和Gradle進行Java項目管理,構建自動化和依賴性解決方案,以比較其方法和優化策略。

如何將Java的Nio(新輸入/輸出)API用於非阻滯I/O?如何將Java的Nio(新輸入/輸出)API用於非阻滯I/O?Mar 11, 2025 pm 05:51 PM

本文使用選擇器和頻道使用單個線程有效地處理多個連接的Java的NIO API,用於非阻滯I/O。 它詳細介紹了過程,好處(可伸縮性,性能)和潛在的陷阱(複雜性,

如何使用適當的版本控制和依賴項管理創建和使用自定義Java庫(JAR文件)?如何使用適當的版本控制和依賴項管理創建和使用自定義Java庫(JAR文件)?Mar 17, 2025 pm 05:45 PM

本文使用Maven和Gradle之類的工具討論了具有適當的版本控制和依賴關係管理的自定義Java庫(JAR文件)的創建和使用。

如何使用Java的插座API進行網絡通信?如何使用Java的插座API進行網絡通信?Mar 11, 2025 pm 05:53 PM

本文詳細介紹了用於網絡通信的Java的套接字API,涵蓋了客戶服務器設置,數據處理和關鍵考慮因素,例如資源管理,錯誤處理和安全性。 它還探索了性能優化技術,我

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。