def rate_handler()

in financial_functions/lambda_handlers.py [0:0]


def rate_handler(request, context):
    """
    Rate of interest period.
    :param request: Dict containing the parameters to pass to the formula.
    :param context: Lambda execution context
    :return: Dict with a 'result' entry containing the result of the calculation
    """
    logger.info("Rate request: {}".format(request))

    validation_result = __validate_arguments('Rate', request, schemas.rate_schema)
    if not validation_result.get('isValid'):
        return {'error': validation_result.get('error')}

    args = [request['nper'], request.get('pmt', 0), request['pv'], request.get('fv', 0), request.get('type', 0), request.get('guess', 0.10)]
    return __call_numpy('rate', args)