Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 8

Имитационное моделирование

29.04.2014, 17:42. Показов 2608. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Друзья, есть готовая прога и данные для финансовой модели, но нужно это программу вывести через VBA.
Кто сможет помочь при написании макроса, чтобы программа работала???????Помогитеее пожалуйста!
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.04.2014, 17:42
Ответы с готовыми решениями:

Имитационное моделирование
Здравствуйте, не могли бы вы помочь составить простую программу связанную с имитационным моделированием?

Имитационное моделирование
Ребята, кто может решить эту задачу? http://gyazo.com/74b5a8239da327e194d3f36fa1c1d654.png Добавлено через 15 часов 20 минут а за...

Имитационное моделирование
Прошу помощи в решении задачи в VBA Excel

19
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38161 / 21096 / 4306
Регистрация: 12.02.2012
Сообщений: 34,683
Записей в блоге: 14
29.04.2014, 18:55
Цитата Сообщение от Kate_07 Посмотреть сообщение
есть готовая прога
- в студию!
Цитата Сообщение от Kate_07 Посмотреть сообщение
но нужно это программу вывести через VBA
- ты хотела сказать "перевести на VBA"? А на каком языке "прога"?
1
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
29.04.2014, 19:53
Цитата Сообщение от Kate_07 Посмотреть сообщение
Друзья, есть готовая прога и данные для финансовой модели
1СБухгалтерия ?
0
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 8
29.04.2014, 21:45  [ТС]
Цитата Сообщение от Catstail Посмотреть сообщение
в студию!
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Function VasicekCIRZeroValue(imod, a, b, r, nowyr, zeroyr, sigma)
’ returns the Vasicek (imod=1) or CIR (imod=2) zero-coupon bond value
Dim syr, sig2, Asyr, Bsyr, rinf, gamma, c1, c2
syr = zeroyr - nowyr
sig2 = sigma O2
If imod = 1 Then
If a = 0 Then
Bsyr = syr
Asyr = Exp((sig2 Ł syr O3) / 6)
Else
Bsyr =(1 - Exp(-a Ł syr)) / a
rinf = b - 0.5 Ł sig2 / (a O2)
Asyr = Exp((Bsyr-syr) Ł rinf - ((sig2 Ł Bsyr O2) /(4 Ł a)))
End If
ElseIf imod = 2 Then
gamma = Sqr(a O2 + 2 Ł sig2)
c1 = 0.5 Ł (a + gamma)
c2 = c1 Ł (Exp(gamma Ł syr) - 1) + gamma
Bsyr = (Exp(gamma Ł syr) - 1) / c2
Asyr = ((gamma Ł Exp(c1 Ł syr)) / c2) O (2 Ł a Ł b / sig2)
End If
VasicekCIRZeroValue = Asyr Ł Exp(-Bsyr Ł r)
End Function
Добавлено через 2 минуты
Catstail, и вот еще
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Function Jamshidianrstar(imod, L, cL, X, a, b, rtest, optyr, zeroyr, coupyr, sigma, radj)
’ replicates Goal Seek to find rstar in Vasicek or CIR coupon option value
’ uses VasicekCIRBondnpv fn
Dim atol, rnow, fr1, fr, fdashr
atol = 0.0000001
rnow = rtest
Do
fr1 = VasicekCIRBondnpv(imod, L, cL, a, b, rnow + radj, optyr, zeroyr, coupyr, sigma) - X
fr = VasicekCIRBondnpv(imod, L, cL, a, b, rnow, optyr, zeroyr, coupyr, sigma)-X
fdashr = (fr1 - fr) / radj
rnow = rnow - (fr / fdashr)
Loop While Abs(fr) > atol
Jamshidianrstar = rnow
End Function
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38161 / 21096 / 4306
Регистрация: 12.02.2012
Сообщений: 34,683
Записей в блоге: 14
29.04.2014, 21:51
У меня такое впечатление, что символ Ł нужно заменить *. Тогда получится весьма похожий на VB код:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Function VasicekCIRZeroValue(imod, a, b, r, nowyr, zeroyr, sigma)
  ' returns the Vasicek (imod=1) or CIR (imod=2) zero-coupon bond value
Dim syr, sig2, Asyr, Bsyr, rinf, gamma, c1, c2
   syr = zeroyr - nowyr
   sig2 = sigma O2
   If imod = 1 Then
      If a = 0 Then
         Bsyr = syr
         Asyr = Exp((sig2 * syr O3) / 6)  '???
      Else
         Bsyr =(1 - Exp(-a * syr)) / a
         rinf = b - 0.5 * sig2 / (a O2)
         Asyr = Exp((Bsyr-syr) * rinf - ((sig2 * Bsyr O2) /(4 * a))) '???
     End If
   ElseIf imod = 2 Then
     gamma = Sqr(a O2 + 2 * sig2) '???
    c1 = 0.5 * (a + gamma)
    c2 = c1 * (Exp(gamma * syr) - 1) + gamma
    Bsyr = (Exp(gamma * syr) - 1) / c2
    Asyr = ((gamma * Exp(c1 * syr)) / c2) O (2 * a * b / sig2)  '???
  End If
  VasicekCIRZeroValue = Asyr * Exp(-Bsyr * r)
End Function
Правда, остается неясным, что есть O (помечено).

Где ты взяла этот код?
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
29.04.2014, 21:52
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Function VasicekCIRZeroValue(imod, a, b, r, nowyr, zeroyr, sigma)
    ’ returns the Vasicek (imod=1) Or CIR (imod=2) zero-coupon bond value
    Dim syr, sig2, Asyr, Bsyr, rinf, gamma, c1, c2
    syr = zeroyr - nowyr
    sig2 = sigma O2
 
    If imod = 1 Then
 
        If a = 0 Then
            Bsyr = syr
            Asyr = Exp((sig2 Ł syr O3) / 6)
        Else
            Bsyr =(1 - Exp(-a Ł syr)) / a
            rinf = b - 0.5 Ł sig2 / (a O2)
            Asyr = Exp((Bsyr-syr) Ł rinf - ((sig2 Ł Bsyr O2) /(4 Ł a)))
        End If
    ElseIf imod = 2 Then
        gamma = Sqr(a O2 + 2 Ł sig2)
        c1 = 0.5 Ł (a + gamma)
        c2 = c1 Ł (Exp(gamma Ł syr) - 1) + gamma
        Bsyr = (Exp(gamma Ł syr) - 1) / c2
        Asyr = ((gamma Ł Exp(c1 Ł syr)) / c2) O (2 Ł a Ł b / sig2)
    End If
    VasicekCIRZeroValue = Asyr Ł Exp(-Bsyr Ł r)
End Function
Добавлено через 2 минуты
Catstail, и вот еще

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Function Jamshidianrstar(imod, L, cL, X, a, b, rtest, optyr, zeroyr, coupyr, sigma, radj)
    ’ replicates Goal Seek To find rstar In Vasicek Or CIR coupon Option value
    ’ uses VasicekCIRBondnpv fn
    Dim atol, rnow, fr1, fr, fdashr
    atol = 0.0000001
    rnow = rtest
 
    Do
        fr1 = VasicekCIRBondnpv(imod, L, cL, a, b, rnow + radj, optyr, zeroyr, coupyr, sigma) - X
        fr = VasicekCIRBondnpv(imod, L, cL, a, b, rnow, optyr, zeroyr, coupyr, sigma)-X
        fdashr = (fr1 - fr) / radj
        rnow = rnow - (fr / fdashr)
    Loop While Abs(fr) > atol
    Jamshidianrstar = rnow
End Function
пытался отформатировать текст своими средствами ...
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38161 / 21096 / 4306
Регистрация: 12.02.2012
Сообщений: 34,683
Записей в блоге: 14
29.04.2014, 21:52
Цитата Сообщение от Catstail Посмотреть сообщение
Vasicek
- неплохо звучит для русского уха... Что это такое?
0
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 8
29.04.2014, 21:57  [ТС]
Catstail,
да, вместо Ł *, а О это ^

Добавлено через 1 минуту
Catstail,
Модель Васичека (Vasicek) — однофакторная математическая модель, описывающая эволюцию так называемой мгновенной процентной ставки. Модель предложена Олдричем Васичеком в 1977 году.

Добавлено через 1 минуту
FelixMacintosh,
спасибо)
т е этот код, можно вставить в модуль VBA в EXCEl? и все будет работать?)))))))
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38161 / 21096 / 4306
Регистрация: 12.02.2012
Сообщений: 34,683
Записей в блоге: 14
29.04.2014, 22:00
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Function VasicekCIRZeroValue(imod, a, b, r, nowyr, zeroyr, sigma)
  ' returns the Vasicek (imod=1) or CIR (imod=2) zero-coupon bond value
Dim syr, sig2, Asyr, Bsyr, rinf, gamma, c1, c2
   syr = zeroyr - nowyr
   sig2 = sigma^2
   If imod = 1 Then
      If a = 0 Then
         Bsyr = syr
         Asyr = Exp((sig2 * syr^3) / 6)  
      Else
         Bsyr =(1 - Exp(-a * syr)) / a
         rinf = b - 0.5 * sig2 / (a^2)
         Asyr = Exp((Bsyr-syr) * rinf - ((sig2 * Bsyr ^ 2) /(4 * a))) 
     End If
   ElseIf imod = 2 Then
     gamma = Sqr(a^2 + 2 * sig2)
    c1 = 0.5 * (a + gamma)
    c2 = c1 * (Exp(gamma * syr) - 1) + gamma
    Bsyr = (Exp(gamma * syr) - 1) / c2
    Asyr = ((gamma * Exp(c1 * syr)) / c2) ^ (2 * a * b / sig2)
  End If
  VasicekCIRZeroValue = Asyr * Exp(-Bsyr * r)
End Function
Добавлено через 1 минуту
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Function Jamshidianrstar(imod, L, cL, X, a, b, rtest, optyr, zeroyr, coupyr, sigma, radj)
' replicates Goal Seek to find rstar in Vasicek or CIR coupon option value
' uses VasicekCIRBondnpv fn
Dim atol, rnow, fr1, fr, fdashr
atol = 0.0000001
rnow = rtest
Do
fr1 = VasicekCIRBondnpv(imod, L, cL, a, b, rnow + radj, optyr, zeroyr, coupyr, sigma) - X
fr = VasicekCIRBondnpv(imod, L, cL, a, b, rnow, optyr, zeroyr, coupyr, sigma)-X
fdashr = (fr1 - fr) / radj
rnow = rnow - (fr / fdashr)
Loop While Abs(fr) > atol
Jamshidianrstar = rnow
End Function
С виду - вполне рабочий код. Теперь нужны значения всех параметров.
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
29.04.2014, 22:02
Цитата Сообщение от Kate_07 Посмотреть сообщение
спасибо)
т е этот код, можно вставить в модуль VBA в EXCEl? и все будет работать?)))))))
да только там еще знак коментария указан неправильно ...( ’ ) правильно .. [ ' ]
ну еще подождём что Catstail посоветует ..
0
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 8
29.04.2014, 22:04  [ТС]
Catstail,
a 0,2339 Bond Face Value (L) 1 iopt 1
b 0,0808 Bond Coupon (cL) 0,05 option caal
r 6,00% Option Exercise Price (X) 0,6
0(nowyr) 0
T(optyr) 4 γ 0,2633
s(zeroyr) 10
(coupyr) 1 r*via fn
σ 0,0845 r* exercise price

T sj P(r*,,sj) Lj Strike(Xj) opion values
1 4 5 0,8273 0,05 0,0414 0
2 4 6 0,7008 0,05 0,035 0,01
3 4 7 0,6051 0,05 0,0303 0,01
4 4 8 0,5306 0,05 0,0265 0,01
5 4 9 0,471 0,05 0,0236 0,01
6 4 10 0,4222 1,05 0,4433 0,18
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
29.04.2014, 22:12
______________
0
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 8
29.04.2014, 22:18  [ТС]
SoftIce, имитационное моделирование!
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
29.04.2014, 22:37
Цитата Сообщение от Kate_07 Посмотреть сообщение
a 0,2339 Bond Face Value (L) 1 iopt 1
b 0,0808 Bond Coupon (cL) 0,05 option caal
r 6,00% Option Exercise Price (X) 0,6
0(nowyr) 0
T(optyr) 4 γ 0,2633
s(zeroyr) 10
(coupyr) 1 r*via fn
σ 0,0845 r* exercise price
T sj P(r*,,sj) Lj Strike(Xj) opion values
1 4 5 0,8273 0,05 0,0414 0
2 4 6 0,7008 0,05 0,035 0,01
3 4 7 0,6051 0,05 0,0303 0,01
4 4 8 0,5306 0,05 0,0265 0,01
5 4 9 0,471 0,05 0,0236 0,01
6 4 10 0,4222 1,05 0,4433 0,18
Это на каком языке писанно

Добавлено через 8 минут
Кстати новость ! мне сминусовали репутацию с 19## до 12##
не знаю кто это делает но я не расстроен, потому что не мне одному ... !
настроение конечно подпортилось, удалил готовийщийся ответ по этой теме
и решил уйти, займусь исключительно своими разработками !
1
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 8
29.04.2014, 22:39  [ТС]
FelixMacintosh, с таблицы в Excel скопировано!

Добавлено через 1 минуту
FelixMacintosh, в смысле готовящийся ответ?
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
29.04.2014, 22:57
Цитата Сообщение от Kate_07 Посмотреть сообщение
FelixMacintosh, в смысле готовящийся ответ?
я уже удалил все ответы .. досвидания

Добавлено через 15 минут

Не по теме:

Пока я готовил сообщение мне ктото устроил такую подлянку
вы конечно тут не причем, но когда нет настроения, я не могу кому-то помогать

0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
29.04.2014, 22:59
Если кому интересно, что это такое:
http://books.google.ru/books?i... ue&f=false
2
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 8
29.04.2014, 23:01  [ТС]
Казанский,
именно)
0
29.04.2014, 23:23

Не по теме:

Цитата Сообщение от FelixMacintosh Посмотреть сообщение
Пока я готовил сообщение мне ктото устроил такую подлянку
Ты не переживай, многим сняли половину репы. Зачем она нужна вообще? Количество благодарностей осталось преждним.

0
29.04.2014, 23:28

Не по теме:

Цитата Сообщение от The trick Посмотреть сообщение
Ты не переживай, многим сняли половину репы. Зачем она нужна вообще? Количество благодарностей осталось преждним.
я собственно успокоился...
хотел даже антиподлянку устроить да потом передумал

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.04.2014, 23:28
Помогаю со студенческими работами здесь

Имитационное моделирование
Здравствуйте знатоки!! у меня возникла проблема по одному примеру! что то не получается. Вопрос выкладываю на скрине. mdl файл в архиве!...

Имитационное моделирование
На промышленном предприятии решается вопрос о том, сколько потребуется механиков для работы в ремонтном цехе. Пусть предприятие имеет 10...

Имитационное моделирование
Вот задание Моделирование двух стратегий обслуживания на АЗС 1 Автозаправочная станция (АЗС) имеет две бензоколонки, причем...

Имитационное моделирование канцелярии
В канцелярию учреждения поступает корреспонденция для 5 подразделений: 20% корреспонденции для подразделения 1. 10% - для подразделения 2....

Имитационное моделирование библиотеки
2. К библиотекарю подходят читатели с заявками на книги каждые 2 мин. В 20 % случаев библиотекарь находит книгу в зале и выдаёт её...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru