Posts

Showing posts with the label Prophet

What Makes a "Good" Prophet Model? (2) - Reduce Redundancy

Image
In my last post , we discussed the importance of avoiding “black box” Prophet models—models so complex and opaque that users struggle to understand the underlying calculations and dependencies. Without clarity, these models can lead to errors, inefficiencies, and unwelcome surprises when something goes wrong. Today, let’s shift our focus to another characteristic of a "good" Prophet model: keeping redundancy low . Let's make the idea simple, redundancy in a Prophet model refers to variables in the model’s library that aren’t actually used in any products within the workspace. If a Prophet model has high redundancy, this means it has thousands of variables available but only a fraction actively contributing to the calculations. 

What Makes a “Good” Prophet Model? (1) - Avoid Black Box

Image
If you're working in the valuation team of a life insurance company, chances are you've spent a lot of time with Prophet. It’s that powerful tool we use for things like cash flow projections and calculating reserves. But here's the thing—how often do you really stop to think about whether the Prophet model you're using is a 'GOOD' Prophet model ?

Some Thoughts on Prophet (Part 2)

One of my favorite functionalities in Prophet is "parameterized extended formula". Although this technical term sounds a bit complex, the concept is in fact pretty straight forward - we can just relate to something we learned in the secondary school, i.e. "f(x)" (functions). How parameterized extended formulas work is similar to self-defined function in Excel VBA. Say we have a function with multiple elements, e.g. f(x, y, z). When we input x = 2, y = 3 and z = 4 to this function, we may get a value of 10 directly. The same function can be used for different combinations of x, y and z - i.e. we can REUSE the function and make our calculation models more efficient. We can use parameterized extended formulas for various areas, such as converting annual decrement rates to monthly rates. Instead of replicating similar formulas for death, TPD and CI separately, we can create a parameterized extended formula that can be used for death, TPD and CI at the same time: Create ...

Some Thoughts on Prophet (Part 1)

Sharing is always a good thing. By sharing the knowledge I have, apart from providing others some ideas on how to improve their daily work or resolve the problems they encounter, I can still benefit from the sharing. Through writing posts in LinkedIn, I strengthen my knowledge and concepts, as well as gaining some inputs and view from other connections in my network. For better records, I also put down my sharing under this blog, so that it is easier to be referred if needed.   Thought (1): Debugger License - Get it if you have the budget If you have additional budgets on Prophet licensing, I would suggest to get the Debugger license (yes, it needs a separate licensing). When you encounter errors in your Prophet runs, AND Prophet cannot display its run log (i.e. errors in both doing runs and displaying run logs at the same time) , Debugger will save your life (otherwise it may very tough to find out what the issue is). If I can suggest enhancements on Prophet, I think it will ...

How do You Setup Indicators in Your Prophet Model?

Image
In my previous post, I have discussed areas that you may consider in setting up input variables . Before I proceed my discussion on core variables, I would think that it is good for use to take a look on indicators - as indicators play an important role in setting core variables with various formulas (known as "variable definitions" in a Prophet model).  The funny thing about indicators is: it DOES NOT carry any formulas that you need to use in calculating a variable! Basically, they are just some texts that you can combine using different logical operators (AND, OR, NOT), such as "ORD_PAR AND SING_PREM" for a single premium ordinary participating product. 

Know More About Input Variables

Image
If you a Prophet user, you must have heard about input variables  and core variables . In simple words, input variables that you need to define individually when you setup a product (of course you can accept the default definitions), whereas core variables are those will be automatically called from libraries when you perform a run.  However, do you ever think how we should assign a variable as input variable or core variable? What are the characteristics that make a variable to be better assigned as input variable? There is no a single right or wrong answer for the above questions. In this article, I am going to share my views (actually the treatment I adopted in the Prophet models I developed before) on how you can handle input variables in the Prophet models.

Master Products in Prophet Workspace - Many or Few?

When I worked on Prophet projects that involved setting up Prophet model from scratch or streamlining existing Prophet models, one of the common requests I came across was relating to no. of master products. Many Prophet users have such a perception, i.e. the lesser no. of master products in a Prophet workspace, the better it is. Let's think about it, is this perception correct? When we are talking about of having a better Prophet model, what does the word "better" mean? Define a BETTER Prophet Model It is important for us to define what we expect from a "better" Prophet model, instead of focusing on the no. of master products in the model. Let me share some views if I am a Prophet user:

Other Ways to Prepare Prophet Model Point Files? Try FoxPro!

Image
If you are a frequent Prophet user, you must be definitely familiar with "Model Point Files" ("MPF"), i.e. the policy data that you compile in a specific format that Prophet can recognize as inputs for Prophet runs. If my guess is right, most probably you use Data Conversion System ("DCS") to convert the source data you download from your policy administration system (may be in various format, e.g. fixed ASCII / fixed width, comma delimited, tab delimited, etc.) into the required MPF, based on the definitions you specified in your DCS programs. In case your source data are divided into various files, you may need to carry out more steps to prepare MPF, for example: Open different source files in Excel Combine required fields from different source files by using commands (such as) VLOOKUP, SUMIF & MATCH. You may have automated this process by using VBA. Convert the required files into text files Use DCS to convert those text files into MPF  How...

Multiple Prophet Workspaces? Combine into ONE!

Image
SCENARIO: Mr. A, the head of valuation team of Company X, was struggling on how to manage his Prophet workspaces. Due to various constraints (time constraints, resource constraints, ...) in the past, his team ended up using multiple Prophet workspaces in performing valuation exercises - which incurred extra time & efforts in completing required studies. To make the matter worse, some workspaces were actually having the same products (well, the oldest workspace was used to calculate statutory reserves and the latest workspace was used to calculate IFRS reserves...) - his team needed to prepare different sets of model point files for these workspaces because the variables used to read model model point files having different names! The Chief Actuary was unhappy with this inefficiency in managing workspaces. He requested Mr. A to work out a way to consolidate the workspaces into one workspace, or at least lesser workspaces. The problem is, the Prophet Manager couldn't allocate ...

How Can We Manage Valuation Prophet Workspaces?

Image
Finally it comes the time to prepare for actuarial valuation work for new financial year 2013. I think it is the correct time for me to share my proposal to one of my clients, Actuarial Department of Company A ,  in order to improve how they can manage their valuation Prophet workspaces. Existing Approach Apart from monthly valuation (i.e. computing statutory reserves), Company A performed various valuation exercises, such as market-consistent embedded value ("MCEV"), on regular basis. Currently, they use a centralized Prophet valuation workspaces for all sorts of valuation exercises, which designated run numbers are assigned to different types of exercises. In order to segregate runs for different valuation months, the Prophet workspace is duplicated every month (including the relevant tables) into a new folder. Of course, all workspaces are saved in a designated drive in the server. Although there are some advantages using this approach, I do share with Company A...

Prophet Modeling (4): How did I setup my Takaful Library?

Image
Hooray, I finally completed the Takaful Library! Working together with Ms. H, we finally setup the Takaful Library from scratch and created 32 “Products” (and another 19 “Same As” products). I am glad that the Valuation Team (headed by my ex-boss Mr. R) can now using a consolidated workspace to do the actuarial studies, especially asset share study and reserve & liabilities capital charges for new valuation basis and Risk-based Capital (RBC) submission. After around 4 months of hard work, finally I can really sit down and “document” this exercise. I will share the experiences I have in this article and several subsequent articles later – hopefully they can help to provide some ideas to you… The above flow chart summarizes the approach I used to complete the Takaful Library project for my Client: Approach Papers I started the project by preparing documentation (Excuse me, I think I heard someone just shouted “Oh no!!”…), which I generally called them as “approach papers” fo...

Prophet Modeling (3): Something About Documentation

I was a bit surprised when Ms. Z called me. She asked me for a favor if I could provide a brief explanation on how actuarial modeling is done, especially related to Prophet – because she needed to review of the actuarial modeling processes. “OK, I can only share with you whatever I did in the past. But you need to check with Actuarial Department for the latest practice they have.” I am no longer with Actuarial Department, hence I couldn’t say on behalf Actuarial Department – furthermore, there is a new leader for the Modeling Team. What I could do was only sharing my past experience when I did my reserve workspace and simplified asset share workspace. I met Ms. Z the next day, together with her colleague (Oops, I didn’t ask what her colleague’s name is…). I explained how Prophet works in a very brief way, so that they could have some ideas how Prophet helps actuarial people doing the job. “Then what were the documentations you had when you setup the actuarial model in Prophet?” Y...

Prophet Modeling (2): How to Organize Variables?

During my discussion with Mr. L & Ms. H on Prophet modeling, I briefly touched about how to organize variables more efficiently into various Variable Groups (from A to Z). In the existing reserving workspace and simplified asset share workspace (deterministic models) which set up by Ms. H & I (also Ms. B) previously, we also split the Variable Groups into “ core variable groups” and “ input variable groups”, which is similar to the standard Conventional Library. The major different between our approach and the standard Conventional Library is we have the same type of classifications for both core variables & input variables – i.e. A-M for core variables, and N-Z for input variables. For example, we have created Variable Groups for decrements like mortality rates – say we used Variable Group “D” (the 4th alphabet starting from A) for core variables (D – Decrements (C)), and similarly we use Variable Group “Q” (the 4th alphabet starting from N) for input variables (Q –...

Prophet Modeling (1): Some Thoughts on Setting Up Takaful Library

I had an hour chat with Ms. H & Mr. L on Prophet Modeling yesterday. Ms. H is my ex-staff when I was the leader for the Modeling Team, she is quite brilliant in helping me setting up the Prophet models (simplified) the Valuation Team currently uses; while Mr. L is my replacement. The objective of the short chat was to exchange some thoughts on how to proceed the work to model a comprehensive cash flow projection model for the Takaful business. Well, although I have partly did the projection model before I resigned from Actuarial Department, I suggested to Mr. L that he should start setting up the model from scratch – instead of continuing from my partially complete model or doing amendments from the Conventional Library. Well, doesn’t this consume more time? This sounds correct if we only have a quick thought, but if we really make a thorough consideration, actually setting up the model from scratch is easier and more efficient. Let’s talk about doing amendment from Conventional Li...