Strategy Inputs

A section of the exec input document for model invocation focuses on strategies. This is an array; you can have as many strategies as you like. The goal of a strategy is to include different guaranteed income products with different allocations (taken from savings) and see how that affects the RISE Score.

A very simple example is below, where there is one ‘base’ strategy, which has no guaranteed income products, and strategy that looks at 10% of savings assigned to a Variable Annuity.

{
	"data": [{
		"id": "af5efe77-fb84-4faa-99c0-0631e86a91cb",
		"type": "profile",
		"attributes": {
			"tag": "minimal inputs",
			"strategy": {
				"strategies": [
					[],
					[
						{
							"productId": 1,
							"allocation": 0.1
						}
					]
				]
			},
			"primary": {},
			"portfolio": []
		}
	}]
}

There are many defaults for each product, but the values can be overridden. The same example above could include:

{
	"data": [{
		"id": "af5efe77-fb84-4faa-99c0-0631e86a91cb",
		"type": "profile",
		"attributes": {
			"tag": "minimal inputs",
			"strategy": {
				"strategies": [
					[],
					[
						{
							"productId": 1,
							"allocation": 0.1,
							"issueAge": 65,
							"withdrawalAge": 65,
							"eqFundAllocation": 0.6,
							"bondFundAllocation": 0.4,
							"fundFees": 0.03,
							"mCharge": 0.003,
							"riderCharge": 0.0085,
							"riderChargeBasis": 0,
							"withdrawalRate": 0.05,
							"ratchet": true,
							"bonusPeriod": 0,
							"bonusPercentage": 0.0,
							"bonusType": 1
						}
					]
				]
			},
			"primary": {},
			"portfolio": []
		}
	}]
}

Note also that earlier versions of the RISE API included a fixed number of strategies (3), such as:

{
	"data": [{
		"id": "af5efe77-fb84-4faa-99c0-0631e86a91cb",
		"type": "profile",
		"attributes": {
			"tag": "minimal inputs",
			"strategy": {
				"strategyOne":[]
				"strategyTwo":[
							"productId": 2,
							"allocation": 0.1,				
					],
				"strategyThree":[
						{
							"productId": 1,
							"allocation": 0.1,
							"issueAge": 65,
							"withdrawalAge": 65,
							"eqFundAllocation": 0.6,
							"bondFundAllocation": 0.4,
							"fundFees": 0.03,
							"mCharge": 0.003,
							"riderCharge": 0.0085,
							"riderChargeBasis": 0,
							"withdrawalRate": 0.05,
							"ratchet": true,
							"bonusPeriod": 0,
							"bonusPercentage": 0.0,
							"bonusType": 1
						}
					]
				]
			},
			"primary": {},
			"portfolio": []
		}
	}]
}

The API is backwards compatible, and this structure still works, but it is not recommended.