Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
11.05.2008 22:32:33 |
Bachus |
|
|
Aw:Intervalschachtelung |
12.05.2008 21:43:54 |
Holger |
|
|
|
13.05.2008 12:23:30 |
Bachus |
|
|
|
13.05.2008 13:06:26 |
Bachus |
|
|
|
13.05.2008 17:32:30 |
Holger |
|
|
Von:
Holger |
Datum:
12.05.2008 21:43:54 |
Views:
1025 |
Rating:
|
Antwort:
|
Thema:
Aw:Intervalschachtelung |
Do-Schleifen werden mit Loop und nicht mit Next abgeschlossen.
As in den If differenz-Zeilen sollen wohl durch = ersetzt werden, um Werte zuzuweisen.
Was BlackScholes macht, weiß ich nicht, weshalb keine Aussage zur geschickteren Programmierung oder zu sonstigen Verbesserngen möglich ist.
Bachus schrieb am 11.05.2008 22:32:33:
Leider funtioniert das nicht weil die Fehlermeldung Anweisung ausserhalb des Typeblocks bezüglich
if difference kommt. Wie bekomme ich diese Fehler in ordnung? Gäbe es noch eine Variante womit ich weniger Variablen bräuchte also das ganze esthetischer wäre? Es handelt sich um eine Intervallschachtelung um zu herauszufinden bei welchem sigma die differenz 0 ist. Eben das Resultat ist dann dieses sigma bei dem die Differenz 0 ist.
Function ImVola(S As Double, K As Double, _
T As Double, r As Double, TargetPrice As Double, _
Optional PutCall As String = "CALL")
Application.Volatile
Dim x1 As Double, x2 As Double
Dim differenz As Double, sigma As Double
x1 = 0
x2 = 20
Do While differenz <> 0
sigma = (x2 - x1 / 2)
differenz = (BlackScholes(S, K, T, r, sigma, [PutCall as String="call"])) - TargetPrice
If differenz > 0 Then x2 As sigma
If differenz < 0 Then x1 As sigma
Next
ImVola = sigma
End Function
Vielen Dank im voraus ;) |
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
11.05.2008 22:32:33 |
Bachus |
|
|
Aw:Intervalschachtelung |
12.05.2008 21:43:54 |
Holger |
|
|
|
13.05.2008 12:23:30 |
Bachus |
|
|
|
13.05.2008 13:06:26 |
Bachus |
|
|
|
13.05.2008 17:32:30 |
Holger |
|
|