PDA

View Full Version : Aiuto con matlab


mariano_21
15-05-2014, 20:11
Ciao a tutti, sono uno studente di economia... avrei bisogno di una mano...
mi ritrovo con un vettore di dimensioni (1.21) e devo creare un ciclo for e if per poter ottenere un altro vettore che deve essere ottenuto considerando solo i valori dispari...mi spiego meglio... quello che dovrei costruire è un albero binomiale e mi è stato suggerito di operare costruendo i diversi vettori che lo compongono...ciò che dovrei fare quindi, partendo dai valori estremi, è trovarmi da tale vettore una serie di valori posti nei punti di mezzo con un vettore della stessa lunghezza del precedente, che vadano a formare tutti i punti dell'albero (costruito con i punti che vanno ad alternarsi)...nel mio caso si tratta di calcolare il valore di un'opzione al tempo iniziale (l'ultimo vettore che dovrebbe uscirmi attraverso questo ciclo)... ora il mio professore mi ha dato questo suggerimento (spero vi possa essere d'aiuto per comprendere il problema):
C_old= 0* [1:n]
for i=2:n-1
if i "pari"
C_new=(p*C_old(i+1)+(1-p)*C_old(i-1))/exp(r*Dt)

per quanto riguarda la selezione dei numeri posizionati nella posizione pari del vettore mi ha suggerito la funzione modulo...ma sinceramente non ho ben capito come utilizzarla...
inoltre mi chiedo perché io debba porre i valori C_old (vettore di partenza) pari a zero...mah... non è che intendeva c_new?
Un'altra cosa che non capisco poi è come fanno tali numeri a posizionarsi sui punti pari del nuovo vettore?
se qualcuno può aiutarmi lo ringrazio

mariano_21
15-05-2014, 23:08
Sinceramente, questo è quello che mi è stato suggerito dal professore, che da per scontato che uno studente di economia sappia utilizzare matlab dopo 2 lezioni introduttive in cui ha spiegato soltanto delle funzioni elementari...
alla fine ciò che devo fare è creare un albero binomiale che mi permetta di trovare un risultato, che è quello in cui l'albero assume 1 solo valore (primo nodo), ciò vettore per vettore...il tutto partendo dall'ultimo vettore, nel quale sono racchiusi dei valori, rispetto ai quali però solo i componenti dispari hanno validità per il mio albero (sono i soli elementi dell'ultima fase)...quindi da questi, attraverso quella procedura dando nel ciclo un valore di i corrispondente agli elementi pari del vettore, attraverso la formula riportata alla fine posso trovare i valori di i+1 e i-1 (rispetto ad ogni i del vettore) che mi permettano di trovare, scontandoli con tale formula, la loro media, da cui ricavare il valore singolo che si porti in un punto pari...quindi alla fine unendo tutti i vettori dovrei ottenere tanti numeri che si distribuiscono come l'immagine seguente
http://imageshack.com/a/img835/192/3kp7.gif
ovviamente con i numeri che si trovano nel posto corrispondente ai nodi

Daniels118
16-05-2014, 10:00
Nel mio paese qualunque numero moltiplicato per zero fa sempre zero, e se dividi il risultato per qualunque numero diverso da zero sempre zero viene, quindi non capisco tale algoritmo cosa possa produrre se non un sacco di zeri.