123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822 |
- <html>
- <head>
- <meta charset="utf8">
-
- <link rel="stylesheet" type="text/css" href="http://cdnjs.cloudflare.com/ajax/libs/metrics-graphics/2.4.0/metricsgraphics.min.css" />
- <link rel="stylesheet" type="text/css" href="./bada55.css" />
- <link rel="stylesheet" type="text/css" href="./style.css" />
-
- <style>
-
- body {
- padding: 10px;
- margin: 0px;
- font-family: 'Sans Serif';
- /* width: 100% !important; */
- }
-
- th {
- color: #222222;
- background-color: #7a9a15;
- }
-
- td, th {
- border: 1px solid #7a9a15;
- padding-top: 5px;
- padding-bottom: 5px;
- padding-left: 10px;
- padding-right: 5px;
-
- white-space: nowrap;
- }
- table {
- border-collapse: collapse;
- }
-
- td > a {
- color: #bada55;
- }
- td > a:visited {
- color: #bada55;
- }
-
- li {
- padding-bottom: 2px;
- }
-
- .amort_table tbody tr:nth-child(3n) {
- background-color: #333333;
- }
- .amort_table tbody tr:nth-child(12n) td {
- border-bottom-width: 4px !important;
- }
-
- input[type=edit] {
- background-color: #444444;
- color: #dddddd;
- }
-
-
- .amort_table {
- text-align: right;
- }
-
- .kidleft > * {
- float: left;
- }
-
- .kidleft {
- overflow: auto;
- zoom: 1;
- }
-
- .item {
- margin-bottom: 10px;
- }
-
- .container {
- padding: 10px;
- border: 1px solid #bada55;
- width: 600px;
- }
-
- .container-box {
- width: 100%;
- overflow: auto;
- zoom: 1;
- }
-
-
-
- .left {
- float: left;
- display: block;
- }
-
- .go {
- margin: 20px;
- }
-
-
- /* chart */
- .mg-x-axis text, .mg-y-axis text, .mg-histogram .axis text {
- fill: #fff;
- }
-
- .mg-markers text {
- fill: #fff;
- }
- text {
- fill: #fff;
- }
- .mg-active-datapoint {
- fill: #fff;
- }
-
- .mg-line6-color, .mg-line6-legend-color, .mg-hover-line6-color, .mg-area6-color {
- stroke: purple;
- fill: purple;
- }
- .mg-line7-color, .mg-line7-legend-color, .mg-hover-line7-color, .mg-area7-color {
- stroke: cyan;
- fill: cyan;
- }
- .mg-line8-color, .mg-line8-legend-color, .mg-hover-line8-color, .mg-area8-color {
- stroke: pink;
- fill: pink;
- }
-
- .mg-line9-color, .mg-line9-legend-color, .mg-hover-line9-color, .mg-area9-color {
- stroke: lime;
- fill: lime;
- }
-
- </style>
- <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
- <script src="http://cdnjs.cloudflare.com/ajax/libs/floatthead/1.2.10/jquery.floatThead.min.js"></script>
- <script src="http://cdnjs.cloudflare.com/ajax/libs/moment.js/2.1.0/moment.min.js"></script>
- <script src="http://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
- <script src="http://cdnjs.cloudflare.com/ajax/libs/handlebars.js/1.0.0/handlebars.min.js"></script>
- <script src="http://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js"></script>
- <script src="http://cdnjs.cloudflare.com/ajax/libs/metrics-graphics/2.4.0/metricsgraphics.js"></script>
-
- <script src="lib.js"></script>
- <script src="calc.js"></script>
- <script src="footnotes.js"></script>
-
- <script>
-
- function min(a,b) { return a < b ? a : b };
- function max(a,b) { return a >= b ? a : b };
-
- var nextID = 1;
- var HB = {};
-
- Handlebars.registerHelper('df', function(d, fmtStr) {
- if(typeof d == 'undefined' || d == null) {
- return 'Unknown';
- }
- var fs = typeof fmtStr == "string" ? fmtStr : "YYYY-MM-DD";
- return moment(d).format(fs);
- });
-
- Handlebars.registerHelper('$', function(n) {
- return parseFloat(n).toMoney()
- });
-
- $(function() {
-
- $('script[type="x-application/handlebars"]').each(function() {
- HB[$(this).attr('name')] = Handlebars.compile($(this).html());
- });
- });
-
- $(function() {
- $('.editor [json]').val(''); // fuck you firefox
- $('.editor [json="date"]').val(moment().format('YYYY-MM-DD'));
- })
-
- Number.prototype.toMoney = function() {
- // return this;
- var str = (this.toFixed(2)+'').toString();
- var x = 3 - str.length;
- if(x > 0) {
- str = (x > 1 ? '00' : '0') + str ;
- }
- return str.replace(/\B(\d\d)$/, '.$1').replace(/\B(?=(\d{3})+(?!\d))/g, ",");
- };
- </script>
-
- <script>
-
- //var mon_interest = ARP / 12; // only works for /APR/, not "annual interest rate"
-
-
- function makeRow() {
- return $('<tr>' + Array.prototype.slice.apply(arguments).map(function(x) { return '<td>' + (x.toMoney && x.toMoney() || x) + '</td>' }).join(' ') + '</tr>');
- }
-
-
-
- function prettyPeriod(n) {
- var y = Math.floor(n / 12);
- var mons = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun','Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
- var m = mons[n % 12];
- return m + ', ' + y;
- }
-
- function whyIsntThisBuiltIn(qstr) {
- return _.object(qstr.split('&').map(function(c) {
- return c.split('=').map(decodeURIComponent);
- }));
- }
-
-
- // initialize any values given in the url
- $(function(){
- var d = _.mapObject(whyIsntThisBuiltIn(window.location.hash.replace(/^#/, '')), parseFloat);
-
- for(var k in d) {
- $('[data-json="'+k+'"]').val(d[k]);
- }
- });
-
-
- // 2015
- // var taxBrackets = {
- // single: {
- /*
- 9225: 10,
- 15 9226
- 25 37451
- 28 90751
- 33 189301
- 35 411501
- 39.6 413201
- 10% Up to $18,450
- 15% $18,451 to $74,900
- 25% $74,901 to $151,200
- 28% $151,201 to $230,450
- 33% $230,451 to $411,500
- 35% $411,501 to $464,850
- 39.6% $464,851 or more
-
- 10% Up to $9,225
- 15% 9,226 to $37,450
- 25% $37,451 to $75,600
- 28% $75,601 to $115,225
- 33% $115,226 to $205,750
- 35% $205,751 to $232,425
- 39.6% $232,426 or more
-
- 10% Up to $13,150
- 15% $13,151 to $50,200
- 25% $50,201 to $129,600
- 28% $129,601 to $209,850
- 33% $209,851 to $411,500
- 35% $411,501 to $439,000
- 39.6% $439,001 or more
- */
-
-
-
-
- /*
-
- ROIC
- income tax deductions
- price/sqft
- warning about roof replacement
- total liability
- total appreciation - total maintenance
- rental income
-
- "other" monthly/yearly costs
- */
- function calcTable(parentClass) {
-
- var pn = $('.' + parentClass + '-form');
-
- var d = grabData($('.' + parentClass + '-form'));
- console.log(d);
- window.location.hash = $.param(d);
-
- //
- // var app_rate = 0;
- // var app_or_resell = pn.find('[name="apporsales"]:checked').val();
- // if(app_or_resell == 'app') {
- // app_rate = parseFloat(pn.find('[data-json="app_rate"] input[type="edit"]').val()) * .01;
- // }
- // else {
- // var resell_price = parseFloat(pn.find('[data-json="resell_price"]').val());
- // var resell_months = parseFloat(pn.find('[data-json="resell_months"]').val());
- // var resell_closing_costs = parseFloat(pn.find('[data-json="resell_closing_costs"]').val());
- // var resell_profit = resell_price - sales_price - resell_closing_costs;
- // app_rate = .01 * (resell_profit / 12 / 12 / resell_months); // BUG: needs to be compound with respect to sales_price
- // }
- //
-
- var mc = mortgage_calc(d);
- var data = mc.time_series;
-
- // nominal dollars
- var table = $('.' + parentClass + '.amort_table.nominal tbody');
- table.html('');
-
- for(var i = 0; i < d.loan_term * 12; i++) {
- table.append(makeRow(
- prettyPeriod(data.period[i]),
- data.loan_balance[i],
- // ltv
- data.pmi[i],
- data.insurance[i],
- data.payment[i],
- data.interest[i],
- data.principle[i],
- data.house_value[i],
- data.appreciation[i],
- data.acc_appreciation[i],
- data.overhead[i],
- data.net_gain[i]
-
- ));
- }
-
- // real dollars
- table = $('.' + parentClass + '.amort_table.real tbody');
- table.html('');
-
- for(var i = 0; i < d.loan_term * 12; i++) {
- table.append(makeRow(
- prettyPeriod(data.period[i]),
- data.inf_loan_balance[i],
- // ltv
- data.inf_pmi[i],
- data.inf_insurance[i],
- data.inf_payment[i],
- data.inf_interest[i],
- data.inf_principle[i],
- data.inf_house_value[i],
- data.inf_appreciation[i],
- data.inf_acc_appreciation[i],
- data.inf_overhead[i],
- data.inf_net_gain[i]
-
- ));
- }
-
- $('.pie-chart').html('');
- mkChart('.pie-chart', "Monthly Cash Flow, Nominal Dollars", [
- ['Principle', data.principle],
- ['Interest', data.interest],
- ['Appreciation', data.appreciation],
- //['Direct Costs', data.direct_costs],
- //['Overhead', data.overhead],
- ['Total Costs', data.total_costs],
- ]);
-
- $('.infpie-chart').html('');
- mkChart('.infpie-chart', "Monthly Cash Flow, Inflation Adjusted", [
- ['Principle', data.inf_principle],
- ['Interest', data.inf_interest],
- ['Appreciation', data.inf_appreciation],
- //['Direct Costs', data.direct_costs],
- //['Overhead', data.overhead],
- ['Total Costs', data.inf_total_costs],
- ]);
-
- $('.loan-chart').html('');
- mkChart('.loan-chart', "Loan, Nominal Dollars", [
- ['House Value', data.house_value],
- //['Appreciation', data.acc_appreciation],
- ['Equity', data.equity],
- //['Direct Costs', data.acc_direct_costs],
- ['Loan Balance', data.loan_balance],
- ['Interest Paid', data.acc_interest],
- ]);
-
- $('.infloan-chart').html('');
- mkChart('.infloan-chart', "Loan, Inflation Adjusted", [
- ['House Value', data.inf_house_value],
- //['Appreciation', data.inf_acc_appreciation],
- ['Equity', data.inf_equity],
- //['Direct Costs', data.inf_acc_direct_costs],
- ['Loan Balance', data.inf_loan_balance],
- ['Interest Paid', data.inf_acc_interest],
- ]);
-
- $('.hae-chart').html('');
- mkChart('.hae-chart', "Capital, Nominal Dollars", [
- ['House Value', data.house_value],
- //['Appreciation', data.acc_appreciation],
- ['Equity', data.equity],
- //['Direct Costs', data.acc_direct_costs],
- ['Cash Outlay', data.cash_spent],
- //['Loan Balance', data.loan_balance],
- ['Net Gain', data.net_gain],
- //['Interest Paid', data.acc_interest],
- ['Ref @ ' + (d.reference_rate*100) + '%', data.reference_line],
- ]);
-
- $('.infcap-chart').html('');
- mkChart('.infcap-chart', "Capital, Inflation Adjusted", [
- //['Appreciation', data.inf_acc_appreciation],
- ['Equity', data.inf_equity],
- //['Direct Costs', data.inf_acc_direct_costs],
- ['Cash Outlay', data.inf_cash_spent],
- ['Net Gain', data.inf_net_gain],
- ['Gross Gain', data.inf_gross_gain],
- ['Ref @ ' + (d.reference_rate*100) + '%', data.inf_reference_line],
- ]);
-
- return;
- };
-
-
-
-
- $(function() {
- $('.go').click(function(e) {
- e.preventDefault();
- calcTable('mortgage');
- // calcAppartment('appartment');
- });
-
- $('[name="apporsales"]').click(function(e) {
- var app_or_resell = $('[name="apporsales"]:checked').val();
- if(app_or_resell == 'app') {
- $('[data-json="app_rate"] input[type="edit"]').removeAttr('disabled');
- $('[data-json="resell_price"]').attr('disabled','disabled');
- $('[data-json="resell_months"]').attr('disabled','disabled');
- $('[data-json="resell_closing_costs"]').attr('disabled','disabled');
- }
- else {
- $('[data-json="app_rate"] input[type="edit"]').attr('disabled','disabled');
- $('[data-json="resell_price"]').removeAttr('disabled');
- $('[data-json="resell_months"]').removeAttr('disabled');
- $('[data-json="resell_closing_costs"]').removeAttr('disabled');
- }
-
- });
-
-
- // fill in the chart options
- var chart_options = [
- {n: 'pmi', l: 'PMI', tt: 'Private Mortgage Insurance. Required for loans with less than 20% equity.' },
- {n: 'payment', l: 'Payment' },
- {n: 'interest', l: 'Interest' },
- {n: 'principle', l: 'Principle'},
- {n: 'insurance', l: 'Homeowner\'s Insurance'},
- {n: 'house_value', l: 'House Value'},
- {n: 'appreciation', l: 'Appreciation (monthly)'},
- {n: 'loan_balance', l: 'Loan Balance'},
- {n: 'equity', l: 'Equity'},
- {n: 'overhead', l: 'Overhead'},
- {n: 'cash_spent', l: 'Cash Spent'},
- {n: 'gross_gain', l: 'Gross Gain'},
- {n: 'net_gain', l: 'Net Gain'},
- {n: 'reference_line', l: 'Reference Line'},
- {n: 'total_costs', l: 'Total Costs'},
- {n: '', l: ''},
-
- ];
-
-
- /*
- $('.chart-options').html('').append(chart_options.map(function(co) {
- if(co.n == '') return '';
- return $('<div><input type="checkbox" name="'+co.n+'" /><label>'+co.l+'</label></div>');
- }));
- */
-
-
- //$('.amort_table').floatThead({useAbsolutePositioning: false});
- });
- </script>
-
-
- </head>
- <body>
- <h2>No data is sent to a server. All information is private to your browser and the url string.</h2>
-
- <div class="tab-group mortgage-form">
-
- <div title="Mortgage" class="container-box tab active">
- <scalar name="apr" default="4.99" type="percent">Loan APR</scalar>
- <scalar name="purchase_price" default="250000" type="dollars">Purchase Price</scalar>
- <scalar name="loan_amount" default="220000" type="dollars">Loan Amount</scalar>
- <scalar name="loan_term" default="30" type="time">Loan Term</scalar>
- <scalar name="closing_costs" default="15000" type="dollars">Closing Costs</scalar>
- <scalar name="pmi_rate" default="0.52" type="percent">Mortgage Insurance Rate</scalar>
-
- <radio name="appreciation_mode" title="Appreciation">
- <opt title="Estimate Rate" value="rate" default="true">
- <scalar name="app_rate" default="6" type="percent">Appreciation Rate</scalar>
-
- </opt>
- <opt title="Calculate Actual" value="actual">
- <scalar name="resell_price" default="280000" type="dollars">Resale Price</scalar>
- <scalar name="resell_months" default="24" type="time">Months After Purchase</scalar>
- <scalar name="resell_closing_costs" default="0" type="dollars">Resell Closing Costs</scalar>
- </opt>
- </radio>
-
- <scalar name="house_area" type="number" default="2000">Living Area, in Square Feet</scalar>
- <choose name="rooftype" type="roof_types">Roof Type</choose>
- <scalar name="roof_age" type="number" default="10">Roof Age, in Years</scalar>
-
-
- <scalar name="maint_yearly" default="1200" type="dollars">Yearly Maintenance Cost (Not including monthy costs)</scalar>
- <scalar name="maint_monthly" default="120" type="dollars">Monthly Maintenance Cost (Not including yearly costs)</scalar>
-
- <scalar name="bills_monthly" default="300" type="dollars">
- Monthly Electric and Utilities (All house-related bills, not including maintenance above)
- </scalar>
-
- <scalar name="other_fees_monthly" default="" type="dollars">
- Other Monthly Fees Not Included Above (HOA Fees, Clubhouse Membership, etc.)
- </scalar>
-
- <scalar name="commute_costs" default="200" type="dollars">
- Monthly Commute Cost (Gas or Transit Passes)
- </scalar>
-
- <scalar name="monthly_rental_income" default="" type="dollars">
- Net Rental Income, Monthly
- </scalar>
-
- <scalar name="reference_rate" default="11" type="percent">
- Reference Line APR
- <footnote>
- Investment of the <b>downpayment</b> at the specified rate
- over the same time period
- </footnote>
- </scalar>
-
- <scalar name="property_tax_rate" default="1.2" type="percent">
- Annual Property Tax Rate
- </scalar>
-
- <button class="next-tab">Next</button>
- </div>
-
- <div title="Apartment" class="container-box appartment-form tab" style="display:none;">
-
- <h3>The cheapest acceptable apartment as an alternative.</h3>
-
- <scalar name="monthly_rent" default="700" type="dollars">Monthly Rent</scalar>
- <scalar name="ref_deposit" default="700" type="dollars">Refundable Deposit</scalar>
- <scalar name="non_ref_fees" default="100" type="dollars">Non-refundable Deposit & Fees</scalar>
-
- <scalar name="ri_amount" default="0" type="dollars">
- Monthly Renter's Insurance Amount
- </scalar>
-
- <scalar name="bills_monthly" default="150" type="dollars">
- Monthly Electric and Utilities
- </scalar>
-
- <scalar name="other_fees_monthly" default="" type="dollars">
- Other Monthly Fees Not Included Above (Parking, etc.)
- </scalar>
-
- <scalar name="commute_costs" default="100" type="dollars">
- Monthly Commute Cost (Gas or Transit Passes)
- </scalar>
-
- <button class="next-tab">Next</button>
- </div>
-
- <div title="General" class="container-box appartment-form tab" style="display:none;">
-
- <scalar name="inflation_rate" default="6" type="percent">
- Inflation Rate <footnote>In the long term on the grand scale, appreciation
- cannot be higher than inflation.</footnote>
- </scalar>
-
- <scalar name="monthly_savings" default="500" type="dollars">
- Net monthly income <b>except</b> housing costs
- <footnote>
- This is how much your bank account would grow every month, except housing
- related costs, if you didn't buy anything you didn't absolutely need.
- </footnote>
- </scalar>
-
-
- <button class="go">Calculate!</button>
-
- </div>
-
- </div>
-
- <br><br>
- <!--
- <fieldset>
- <legend>Roof</legend>
- <label>Age (years)</label>
- <input data-json="roof_age" type="edit" value="5" />
-
- <label>Type</label>
- <select data-json="roof_type">
- <option value="asphalt_shingle" selected>Asphalt Shingle</option>
- <option value="rolled_asphalt">Tar/Rolled Asphalt (flat roofs only)</option>
- <option value="metal">Metal</option>
- <option value="tile">Tile, Slate, or Clay</option>
- <option value="wood_shingle">Wood Shingle</option>
- </select>
- <label>Pitch</label>
- <select data-json="roof_pitch">
- <option value="flat">Flat</option>
- <option value="2_12">Not very steep at all</option>
- <option value="4_12" selected>Fairly average</option>
- <option value="6_10">Rather steep, about 45 degrees</option>
- <option value="8_12">Incredibly dangerous</option>
- </select>
- </fieldset>
-
- <fieldset>
- <legend>Taxes</legend>
- Annual Property Tax Rate
- <div class="item editable">
- <input data-json="property_tax_rate" type="edit" value="1.2" />
- </div>
- <!--
- Adjusted Gross Income (not including house/mortgage tax deductions): (taxable income after deductions)
- <div class="item editable">
- <input data-json="annual_taxes" type="edit" value="0" />
- </div>
- Filing Status:
- <div class="item editable">
- <select data-json="tax_filing_status">
- <option selected value="single">Single</option>
- <option value="married">Married, Filing Jointly</option>
- <option value="mfs">Married, Filing Separately</option>
- <option value="head">Head Of Household</option>
- </select>
- </div> - ->
- </fieldset>
-
- Monthly Income after taxes and bills, not including housing.
- <div class="item editable">
- <input data-json="monthly_income_before_housing" type="edit" value="" />
- </div>
- Cheapest monthly rent for acceptable unit in area.
- <div class="item editable">
- <input data-json="cheapest_rent" type="edit" value="" />
- </div>
-
- </div-->
-
- <!--div class="container appartment-form left">
- <h4>Appartment</h4>
-
- Monthly Rent, Including Parking, Storage and Pet Fees:
- <div class="item editable" data-json="rent">
- <input type="edit" value="1400" />
- </div>
-
- Refundable Deposit:
- <div class="item editable" data-json="ref_deposit">
- <input type="edit" value="600" />
- </div>
-
- Non-refundable Deposit / Fees:
- <div class="item editable" data-json="non_ref_fees">
- <input type="edit" value="300" />
- </div>
- Monthly Renter's Insurance Amount:
- <div class="item editable" data-json="ri_amount">
- <input type="edit" value="10" />
- </div>
-
- Monthly Electric and Utilities (All appartment-related bills, not including maintenance above):
- <div class="item editable" data-json="bills">
- <input type="edit" value="80" />
- </div>
-
- Monthly Commute Cost (Gas or Transit Passes):
- <div class="item editable" data-json="commute">
- <input type="edit" value="20" />
- </div>
-
- </div- ->
- </div-->
-
-
-
- <div class="chart-options"></div>
-
- <!-- <canvas class="pie-chart" width="600" height="300"></canvas> -->
- <div class="pie-chart" ></div>
- <hr>
- <div class="infpie-chart" ></div>
- <hr>
- <div class="loan-chart" ></div>
- <hr>
- <div class="infloan-chart" ></div>
- <hr>
- <div class="hae-chart" ></div>
- <hr>
- <div class="infcap-chart" ></div>
-
- <br>
- <br>
- <br>
- <script>
- $(function() { $('.table-dollar-select').change(function(e) {
- //console.log($(this).val())
- $('.amort_table.mortgage').hide();
- $('.amort_table.mortgage.'+$(this).val()).show();
- })});
- </script>
- <h2>Figures Below In <select class="table-dollar-select"><option value="nominal">Nominal</option><option value="real" selected>Inflation Adjusted</option></select> Dollars</h2>
- <div class="left">
- <table class="amort_table mortgage nominal" style="display:none;">
- <thead>
- <tr>
- <th>EOM</th>
- <th>Starting Balance</th>
-
- <th>PMI</th>
- <th>Insurance</th>
- <th>Payment</th>
- <th>Interest</th>
- <th>Principle</th>
- <th>House Value</th>
- <th>Appreciation</th>
- <th>Total Appr.</th>
- <th>Overhead</th>
- <th>Net Gain</th>
- <!--th>Total Insurance</th>
- <th>Appreciation</th>
- <th>House Value</th>
- <th>Equity</th>
- <th>Tax Savings</th>
- <th>Overhead</th>
- <th>Monthly Costs</th>
- <th>Accumulated Costs</th>
- <th>Net Gain If Sold Now</th-->
- </th>
- </thead>
- <tbody>
-
- </tbody>
- </table>
-
- <table class="amort_table mortgage real" >
- <thead>
- <tr>
- <th>EOM</th>
- <th>Starting Balance</th>
-
- <th>PMI</th>
- <th>Insurance</th>
- <th>Payment</th>
- <th>Interest</th>
- <th>Principle</th>
- <th>House Value</th>
- <th>Appreciation</th>
- <th>Total Appr.</th>
- <th>Overhead</th>
- <th>Net Gain</th>
- <!--th>Total Insurance</th>
- <th>Appreciation</th>
- <th>House Value</th>
- <th>Equity</th>
- <th>Tax Savings</th>
- <th>Overhead</th>
- <th>Monthly Costs</th>
- <th>Accumulated Costs</th>
- <th>Net Gain If Sold Now</th-->
- </th>
- </thead>
- <tbody>
-
- </tbody>
- </table>
- </div>
-
- <!--div class="left">
- <table class="amort_table appartment">
- <thead>
- <tr>
- <th>EOM</th>
- <th>Rent</th>
- <th>Bills</th>
- <th>Monthly Costs</th>
- <th>Total Loss</th>
- </tr>
- </thead>
- <tbody>
-
- </tbody>
- </table>
- </div-->
-
-
-
-
- </body>
- </html>
|