public Loan(CapitalStrategy capitalStrategy, double commitment, double outstanding, int riskRating, DateTime?maturity, DateTime?expiry) { this.commitment = commitment; this.outstanding = outstanding; this.riskRating = riskRating; this.maturity = maturity; this.expiry = expiry; this.capitalStrategy = capitalStrategy; if (capitalStrategy is null) { if (expiry is null) { this.capitalStrategy = new CapitalStrategyTermLoan(); } else if (maturity is null) { this.capitalStrategy = new CapitalStrategyRevolver(); } else { this.capitalStrategy = new CapitalStrategyRCTL(); } } }
public Loan(float notional, float outstanding, int rating, DateTime expiry) { this._strategy = new TermROC(); this._notional = notional; this._outstanding = outstanding; this._rating = rating; this._expiry = expiry; }
public Loan(CapitalStrategy capitalStrategy, double commitment, int riskRating, DateTime maturity, DateTime expiry) { this.CapitalStrategy = capitalStrategy; this.Commitment = commitment; this.RiskRating = riskRating; this.Maturity = maturity; this.Expiry = expiry; }
public Loan(Single notional, Single outstanding, Int32 rating, DateTime expiry) { this._strategy = new TermROC(); this._notional = notional; this._outstanding = outstanding; this._rating = rating; this._expiry = expiry; }
public Loan(float notional, float outstanding, int rating, DateTime expiry, DateTime maturity) { this._strategy = new RevolvingTermROC(); this._notional = notional; this._outstanding = outstanding; this._rating = rating; this._expiry = expiry; this._maturity = maturity; }
public static Loan CreateRevolver( CapitalStrategy riskAdjustedCapitalStrategy, double commitment, double outstanding, int riskRating, DateTime?expiry) { return(new Loan(riskAdjustedCapitalStrategy, commitment, outstanding, riskRating, null, expiry)); }
public static Loan CreateRCTL( CapitalStrategy riskAdjustedCapitalStrategy, double outstanding, int riskRating, DateTime maturity, DateTime expiry) { return(new Loan(riskAdjustedCapitalStrategy, outstanding, outstanding, riskRating, maturity, expiry)); }
public Loan(Single notional, Single outstanding, Int32 rating, DateTime expiry, DateTime maturity) { this._strategy = new RevolvingTermROC(); this._notional = notional; this._outstanding = outstanding; this._rating = rating; this._expiry = expiry; this._maturity = maturity; }
public Loan(CapitalStrategy strategy, float notional, float outstanding, int rating, DateTime expiry, DateTime maturity) { this._strategy = strategy; this._notional = notional; this._outstanding = outstanding; this._rating = rating; this._expiry = expiry; this._maturity = maturity; }
// Example of: catch-all constructor public Loan(CapitalStrategy strategy, Single notional, Single outstanding, Int32 rating, DateTime expiry, DateTime?maturity) { this._strategy = strategy; this._notional = notional; this._outstanding = outstanding; this._rating = rating; this._expiry = expiry; this._maturity = maturity; }
public Loan(double notional, double outstanding, int rating, DateTime?expiry) { this.strategy = new TermROC(); this.notional = notional; this.outstanding = outstanding; this.rating = rating; this.expiry = expiry; }
public Loan(double notional, double outstanding, int rating, DateTime?expiry, DateTime?maturity) { this.strategy = new RevolvingTermROC(); this.notional = notional; this.outstanding = outstanding; this.rating = rating; this.expiry = expiry; this.maturity = maturity; }
public Loan(CapitalStrategy strategy, double notional, double outstanding, int rating, DateTime?expiry, DateTime?maturity) { this.strategy = strategy; this.notional = notional; this.outstanding = outstanding; this.rating = rating; this.expiry = expiry; this.maturity = maturity; }
public void Sample() { var commitment = 0.00; var riskRating = 0; DateTime maturity = new DateTime(); Loan termLoan = Loan.CreateTermLoan(commitment, riskRating, maturity); var riskAdjustedCapitalStrategy = new CapitalStrategy(); var outstanding = 0.0; Loan termLoan2 = Loan.CreateTermLoan( riskAdjustedCapitalStrategy, commitment, outstanding, riskRating, maturity, null); Loan revolver = Loan.CreateRevolver(commitment, outstanding, riskRating, maturity, null); }
public Loan(CapitalStrategy capitalStrategy, double commitment, int riskRating, DateTime?maturity, DateTime?expiry) : this(capitalStrategy, commitment, 0.0, riskRating, maturity, expiry) { }
public static Loan CreateTermLoan(CapitalStrategy riskAdjustedCapitalStrategy, double commitment, double outstanding, int riskRating, DateTime maturity, DateTime?expiry) { return(new Loan(riskAdjustedCapitalStrategy, commitment, outstanding, riskRating, maturity, null)); }