Страницы: 1
RSS
Задание выбор периода дисконтирования в модели DCF, Оптимизация модели DCF
 
Добрый вечер! Задумался я над оптимизацией модели DCF, но никак не могу понять как сделать.
В ячейке S6 есть формула (для 4 лет прогноза):
Код
=(ЧПС(G$27;$K$13:$N$13)+($N$13*(1+$F28)/(G$27-$F28))*(1/(1+G$27)^$N$2)-$M$20)
и в ячейке M16:
Код
=ЧПС(C16;K13:N13)

Я хочу "научить" свою DCF строить модель в зависимости от периода дисконтирования. Вот пример формулы для 3 лет прогноза:
ячейка S6:
Код
=(ЧПС(G$27;$L$13:$N$13)+($N$13*(1+$F28)/(G$27-$F28))*(1/(1+G$27)^$N$2)-$M$20)

ячейка M16:
Код
=ЧПС(C16;L13:N13)
Нужно в конечном итоге получить "динамическую формулу", которая зависит от числа установленного в ячейке (выбор от 1 до 10). Можно реализовать это через функцию ЕСЛИ, но это довольно громоздко будет. Может есть варианты как это сделать?

Желательно, чтобы потом можно в макрос можно было бы сделать. Например, нажимаем кнопку, возникает запрос для какого количества периодов строить формулы, печатаем или выбираем от 1 до 10, получаем результат.

Как это сделать - я не знаю:(

Спасибо за помощь!

P.S. В остальных ячейках (T6 и т.д.) тоже надо менять, но может я пойму как сделать на примере...
 
Цитата
Macedon написал: Может есть варианты как это сделать?
если хорошо представляете свою модель - можно использовать Подбор Параметра
- (прежде выстроив формульные зависимости между переменными)...
Цитата
Macedon написал: возникает запрос для какого количества периодов строить формулы, печатаем или выбираем от 1 до 10, получаем результат.
его использование можно автоматизировать (даже без запроса - вводом нового значения в яч), как в ветке Подбор параметра как Function в VBA (будет автоматически работать при пересчёте ячеек)... или повесить на событие (пример, Private Sub Worksheet_Change), или другое...
p.s. буквально на днях тоже был пример макроса для Подбора Параметра  
Изменено: JeyCi - 24.05.2016 09:44:41
чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок - обратитесь к собеседнику на ВЫ - ответ на ваш вопрос получите - а остальное вас не касается (п.п.п. на форумах)
 
Цитата
JeyCi написал:
p.s. буквально на днях тоже был  пример макроса для Подбора Параметра
Проблема в том, что в примере работа с ячейкой (а конкретно с подбором значения), а не с диапазоном данных, хотелось бы его выбор задавать макросом:

Зависимости от значений от 1 до 4 будут выглядеть так:

Ячейка N2 = 4, то формула (кусочек):
Код
(ЧПС(G$27;$K$13:$N$13)

Ячейка N2 = 3, то формула (кусочек):
Код
(ЧПС(G$27;$L$13:$N$13)

Ячейка N2 = 2, то формула (кусочек):
Код
(ЧПС(G$27;$M$13:$N$13)

Ячейка N2 = 1, то формула (кусочек):
Код
(ЧПС(G$27;$N$13:$N$13)
 
Цитата
JeyCi написал: - (прежде выстроив формульные зависимости между переменными)...
если не получается... то и не надо... смутила эта фраза:
Цитата
Macedon написал: Я хочу "научить" свою DCF строить модель в зависимости от периода дисконтирования.
- не описана цель моделирования, если это вообще моделирование?... не готова вникать
p.s. абстрагируйтесь от благородных целей - учить модель (ведь это будут уже нейронные сети ;) )... упростите описание... по вашему описанию - нужную переменную можно и в яч. ввести, а в др. яч. (формулах) использовать ссылку на неё... зачем форма? (не понятна оптимальность подхода, а значит и смысл тратить на него время).. вам виднее ... успехов
Изменено: JeyCi - 24.05.2016 10:33:34
чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок - обратитесь к собеседнику на ВЫ - ответ на ваш вопрос получите - а остальное вас не касается (п.п.п. на форумах)
 
вашу задачу можно решить используя таблицы подстановки.
но реализовать функцию на vba не получится (в пользовательских функциях нельзя задавать значение ячейке ((()
в который раз не могу вставить файл в сообщение (chrom). киньте в личку почту - вышлю файл.
вместо этого лист с расчетом можно скрыть, на пользовательском листе сделать выпадающий список с периодами, по которым будет подтягиваться расчитанное значение.
Изменено: egonomist - 24.05.2016 11:30:18
 
Спасибо всем откликнувшимся, я все-таки смог сделать некую рабочую версию того, что хотел сделать.

Здесь вариант прописан вариант для 3 и 4 периодов дисконтирования (расположил на ячейке S17, можно было сравнить с оригиналом):
Код
Sub Form()
'
' Form макрос
'
 If Range("N2") = "3" Then
    Range("S17").Select
    ActiveCell.FormulaR1C1 = _
       "=(NPV(R27C[-12],R13C12:R13C14)+(R13C14*(1+R[11]C6)/(R27C[-12]-R[11]C6))*(1/(1+R27C[-12])^R2C14)-R20C13)"
    
    Range("S17").Select
    Selection.AutoFill Destination:=Range("S17:Y17"), Type:=xlFillDefault
    Range("S17:Y17").Select
    Selection.AutoFill Destination:=Range("S17:Y23"), Type:=xlFillDefault
    Range("S17:Y23").Select
    
 ElseIf Range("N2") = "4" Then
    Range("S17").Select
    ActiveCell.FormulaR1C1 = _
       "=(NPV(R27C[-12],R13C11:R13C14)+(R13C14*(1+R[11]C6)/(R27C[-12]-R[11]C6))*(1/(1+R27C[-12])^R2C14)-R20C13)"
    
    Range("S17").Select
    Selection.AutoFill Destination:=Range("S17:Y17"), Type:=xlFillDefault
    Range("S17:Y17").Select
    Selection.AutoFill Destination:=Range("S17:Y23"), Type:=xlFillDefault
    Range("S17:Y23").Select
    
    End If

End Sub

 
удалось выложить файл с телефона
 
Спасибо, я еще поизучаю, но там, мне кажется, есть неточности. WACC и темп роста, на мой взгляд, не должны зависеть от количества периодов дисконтирования... WACC (формулы) и темп роста (значение) задаются внешне.
 
кто может помочь с моделью dcf за разумную плату, очень нужно
 
Создайте тему в разделе Работа, прикрепите пример, обозначьте бюджет.
Страницы: 1
Наверх