Here are the key elements that make Green Mountain Financial Services Inc. stand out
Explore FAQs →
Skip to main content

Green Mountain Financial Services Inc.

GMFSI Investment Planning Suite

Investment Strategy Planner V2.0

Assess your risk profile, investment horizon, objectives, liquidity needs, and preferences—then generate an illustrative asset allocation and rebalancing strategy.

Enhanced Strategy Edition
0% complete
1

Your Investment Profile

Complete the investor profile questions and planning assumptions below.

How would you react if your portfolio declined by 15% over a short period?
Which statement best describes your investment knowledge?
What level of short-term fluctuation are you comfortable accepting?
Educational planning illustration only. This tool does not determine suitability, know-your-client requirements, risk capacity, tax consequences, legal ownership, account type, product selection, securities recommendations, or guaranteed returns. A formal investment recommendation requires a complete review of your financial circumstances, objectives, time horizon, risk tolerance, risk capacity, investment knowledge, liquidity needs, tax position, and existing holdings.
`; } function printReport(){ const r=window.__gmfsi_isp_v2||calculate(); if(!r) return; const w=window.open('','_blank','width=920,height=760'); if(!w){ alert('Please allow pop-ups for gmfsi.ca, then try again.'); return; } w.document.open();w.document.write(buildReport(r));w.document.close(); } async function sendSummary(){ let r=window.__gmfsi_isp_v2||calculate(); if(!r) return; r.name=text('ispName'); r.email=text('ispEmail'); if(!r.name){ alert('Please enter the client or household name before sending.'); $('ispName').focus();return; } if(!r.email || !$('ispEmail').checkValidity()){ alert('Please enter a valid client email before sending.'); $('ispEmail').focus();return; } const btn=$('ispSend'); const original=btn.textContent; btn.textContent='Sending...'; btn.setAttribute('aria-busy','true'); const payload={ ts:new Date().toISOString(), calculator:'Investment Strategy Planner V2.0', name:r.name, email:r.email, n:r.riskScore, plan:r.equity, prov:r.defensive, dentYN:r.allocation.alt, hsa:r.portfolio, base:r.allocation.fixed, dent:r.allocation.cash, adm:0, monthly:0, annual:r.portfolio, age:r.age, investmentHorizon:r.horizon, primaryObjective:r.objectiveText, liquidityScore:r.liquidity, lossReactionScore:r.loss, investmentKnowledgeScore:r.knowledge, volatilityComfortScore:r.volatility, riskScore:r.riskScore, riskProfile:r.profile, canadianEquity:r.allocation.canada, usEquity:r.allocation.us, internationalEquity:r.allocation.intl, fixedIncome:r.allocation.fixed, cash:r.allocation.cash, alternatives:r.allocation.alt, totalEquity:r.equity, defensiveAllocation:r.defensive, rebalancingFrequency:r.rebalance, reviewFrequency:r.review, rebalancingTrigger:r.trigger, portfolioOrientation:r.orientation, taxPlanningFocus:r.taxFocus, planningFocus:r.planningFocus }; try{ const response=await fetch('/wp-json/gmfsi/v1/send-estimate',{ method:'POST', headers:{'Content-Type':'application/json'}, body:JSON.stringify(payload) }); let data={}; try{data=await response.json();}catch(ignore){} if(!response.ok) throw new Error(data.message||'The strategy summary could not be sent.'); $('ispMessage').textContent='Investment strategy summary sent successfully to GMFSI. You may also print or save the full report.'; alert('Investment strategy summary sent successfully to GMFSI.'); }catch(error){ console.error(error); alert('The summary could not be sent. Please confirm that the GMFSI universal calculator email endpoint is active.'); }finally{ btn.textContent=original; btn.removeAttribute('aria-busy'); } } fields.forEach(id=>{ const el=$(id); if(!el) return; el.addEventListener('input',updateProgress); el.addEventListener('change',updateProgress); }); root.querySelectorAll('input[type="radio"]').forEach(el=>{ el.addEventListener('change',updateProgress); }); $('ispCalculate').addEventListener('click',calculate); $('ispPrint').addEventListener('click',printReport); $('ispSend').addEventListener('click',sendSummary); calculate(); updateProgress(); })();
Start Here →