一. 前言
模拟分析, 可以视作规划求解的组成部分.
Excel规划求解示例 - 上架商品利润最大化 | Lian (kyouichirou.github.io)
二. 模拟分析
通过使用 Excel 中的模拟分析工具, 可以在一个或多个公式中使用多个不同的值集来浏览所有不同结果.
例如, 可以执行模拟分析来构建两个预算, 并假设每个预算具有特定收益. 或者可以指定希望公式产生的结果, 然后确定哪个值集产生此结果. Excel 提供数种不同工具来帮助执行适合需求的分析.
2.1 单变量求解
单变量求解, 这个很简单, 即拟合逼近某个值
$$ x ^2 - 1= 0 $$ 以上述方程为例
在财务中, 常见的公式PV, FV可以视作对单变量集成封装.
PV(rate, nper, pmt, [fv], [type])
PV 函数语法具有下列参数:
- Rate 必需. 各期利率. 例如, 如果您获得年利率为 10% 的汽车贷款, 并且每月还款一次, 则每月的利率为 10%/12( 即 0.83%) . 您需要在公式中输入 10%/12( 即 0.83%) 或 0.0083 作为利率.
- Nper 必需. 年金的付款总期数. 例如, 如果您获得为期四年的汽车贷款, 每月还款一次, 则贷款期数为 4*12( 即 48) 期. 您需要在公式中输入 48 作为 nper.
- Pmt 必需. 每期的付款金额, 在年金周期内不能更改. 通常, pmt 包括本金和利息, 但不含其他费用或税金. 例如, 对于金额为 ¥100,000, 利率为 12% 的四年期汽车贷款, 每月付款为 ¥2633.30. 您需要在公式中输入 -2633.30 作为 pmt. 如果省略 pmt, 则必须包括 fv 参数.
- fv 可选. 未来值, 或在最后一次付款后希望得到的现金余额. 如果省略 fv, 则假定其值为 0( 例如, 贷款的未来值是 0) . 例如, 如果要在 18 年中为支付某个特殊项目而储蓄 ¥500,000, 则 ¥500,000 就是未来值. 然后, 您可以对利率进行保守的猜测, 并确定每月必须储蓄的金额. 如果省略 fv, 则必须包括 pmt 参数.
- Type 可选. 数字 0 或 1, 用以指定各期的付款时间是在期初还是期末.
Type 支付时间 0 或省略 期末 1 期初
FV(rate,nper,pmt,[pv],[type])
For a more complete description of the arguments in FV and for more information on annuity functions, see PV.
The FV function syntax has the following arguments:
- Rate Required. The interest rate per period.
- Nper Required. The total number of payment periods in an annuity.
- Pmt Required. The payment made each period; it cannot change over the life of the annuity. Typically, pmt contains principal and interest but no other fees or taxes. If pmt is omitted, you must include the pv argument.
- Pv Optional. The present value, or the lump-sum amount that a series of future payments is worth right now. If pv is omitted, it is assumed to be 0 (zero), and you must include the pmt argument.
- Type Optional. The number 0 or 1 and indicates when payments are due. If type is omitted, it is assumed to be 0.
Set type equal to If payments are due 0 At the end of the period 1 At the beginning of the period
双向求解, 要达到目标值, 初始投入为多少; 初始投入, 最后达到的目标值是多少.
2.1.1 附录 - 财务函数
( 1) 投资计算函数
函数名称 | |
---|---|
EFFECT | 计算实际年利息率 |
FV | 计算投资的未来值 |
FVSCHEDULE | 计算原始本金经一系列复利率计算之后的未来值 |
IPMT | 计算某投资在给定期间内的支付利息 |
NOMINAL | |
NPER | 计算投资的周期数 |
NPV | 在已知定期现金流量和贴现率的条件下计算某项投资的净现值 |
PMT | 计算某项年金每期支付金额 |
PPMT | 计算某项投资在给定期间里应支付的本金金额 |
PV | 计算某项投资的净现值 |
XIRR | 计算某一组不定期现金流量的内部报酬率 |
XNPV | 计算某一组不定期现金流量的净现值 |
( 2) 折旧计算函数
函数名称 | 函数功能 |
---|---|
AMORDEGRC | 计算每个会计期间的折旧值 |
DB | |
DDB | 计算用双倍余额递减或其它方法得出的指定期间内资产折旧值 |
SLN | 计算一个期间内某项资产的直线折旧值 |
SYD | 计算一个指定期间内某项资产按年数合计法计算的折旧值 |
VDB | 计算用余额递减法得出的指定或部分期间内的资产折旧值 |
( 3) 偿还率计算函数
函数名称 | |
---|---|
IRR | 计算某一连续现金流量的内部报酬率 |
MIRR | |
RATE | 计算某项年金每个期间的利率 |
( 4) 债券及其他金融函数
函数名称 | 函数功能 |
---|---|
ACCRINTM | 计算到期付息证券的应计利息 |
COUPDAYB | 计算从付息期间开始到结算日期的天数 |
COUPDAYS | 计算包括结算日期的付息期间的天数 |
COUPDAYSNC | |
COUPNCD | 计算结算日期后的下一个付息日期 |
COUPNUM | 计算从结算日期至到期日期之间的可支付息票数 |
COUPPCD | 计算结算日期前的上一个付息日期 |
CUMIPMT | 计算两期之间所支付的累计利息 |
CUMPRINC | 计算两期之间偿还的累计本金 |
DISC | |
DOLLARDE | 转换分数形式表示的货币为十进制表示的数值 |
DOLLARFR | |
DURATION | |
INTRATE | 计算定期付息证券的利率 |
ODDFPRICE | 计算第一个不完整期间面值$100的证券价格 |
ODDFYIELD | 计算第一个不完整期间证券的收益率 |
ODDLPRICE | 计算最后一个不完整期间面值$100的证券价格 |
ODDLYIELD | 计算最后一个不完整期间证券的收益率 |
PRICE | 计算面值$100定期付息证券的单价 |
PRICEDISC | 计算面值$100的贴现证券的单价 |
PRICEMAT | 计算面值$100的到期付息证券的单价 |
PECEIVED | 计算全投资证券到期时可收回的金额 |
TBILLPRICE | 计算面值$100的国库债券的单价 |
TBILLYIELD | 计算国库债券的收益率 |
YIELD | 计算定期付息证券的收益率 |
YIELDDISC | |
YIELDMAT |
2.2 模拟运算表
多变量求解
通过预设不同的条件, 批量得到各种模拟值.
2.3 方案摘要
这没什么好说, 就是预设条件, 然后批量生成数据结果(独立在一张表).