capm_expected_return
Calculate expected investment returns using the Capital Asset Pricing Model (CAPM) by inputting risk-free rate, beta, and market return values.
Instructions
Calculate expected return using CAPM model
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| beta | Yes | ||
| marketReturn | Yes | ||
| riskFreeRate | Yes |
Implementation Reference
- src/tools/financial-tools.ts:383-397 (handler)MCP tool handler function that invokes the Python CAPM calculation via the PythonBridge.handler: async (args: any): Promise<ToolResult> => { try { const result = await pythonBridge.callPythonFunction({ module: 'financial_calculations', function: 'FinancialCalculator.capm', args: [args.riskFreeRate, args.beta, args.marketReturn] }); return result; } catch (error) { return { success: false, error: error instanceof Error ? error.message : String(error) }; } }
- src/tools/financial-tools.ts:374-382 (schema)Input schema defining parameters for the CAPM expected return calculation.inputSchema: { type: "object", properties: { riskFreeRate: { type: "number" }, beta: { type: "number" }, marketReturn: { type: "number" } }, required: ["riskFreeRate", "beta", "marketReturn"] },
- src/tools/financial-tools.ts:371-398 (registration)Tool definition and registration within the financialTools array.{ name: "capm_expected_return", description: "Calculate expected return using CAPM model", inputSchema: { type: "object", properties: { riskFreeRate: { type: "number" }, beta: { type: "number" }, marketReturn: { type: "number" } }, required: ["riskFreeRate", "beta", "marketReturn"] }, handler: async (args: any): Promise<ToolResult> => { try { const result = await pythonBridge.callPythonFunction({ module: 'financial_calculations', function: 'FinancialCalculator.capm', args: [args.riskFreeRate, args.beta, args.marketReturn] }); return result; } catch (error) { return { success: false, error: error instanceof Error ? error.message : String(error) }; } } },
- The core CAPM formula implementation in Python: E(R) = Rf + β (Rm - Rf)@staticmethod def capm(risk_free_rate: float, beta: float, market_return: float) -> float: """Calculate expected return using CAPM""" return risk_free_rate + beta * (market_return - risk_free_rate)