public Portefeuille(double[] spot, double[] deltas, Portefeuille pfPrec, double r, Options.Option option, int date) { // Constructeur qui crée un portefeuille rebalancé this.nbActions = deltas.ToList(); this.option = option; double valeurActu = pfPrec.actu(spot, r, pfPrec); this.tauxSansRisque = valeurActu; for (int i = 0; i < deltas.Length; i++) { this.tauxSansRisque -= deltas[i] * spot[i]; } this.date = date; }
public double actu(double[] spot, double r, Portefeuille pfPrec) { // Actualise la valeur du portefeuille au temps n jusqu'au temps n+1 // r = taux sans risque List <double> anciensDeltas = pfPrec.nbActions; var valeur = 0.0; int i = 0; foreach (var delta in anciensDeltas) { valeur += delta * spot[i]; i++; } valeur += pfPrec.tauxSansRisque * r; return(valeur); }