مدل‌سازی مالی

فرض‌های مدل مالی و محور زمانی یکدست؛ دو عادت مدل‌ساز حرفه‌ای

تاریخ
زمان مطالعه۵ دقیقه
نویسندهکمیل مزرعی

وقتی مدل مالی بزرگ می‌شود، دو پرسش ساده می‌تواند بین مدل قابل‌اتکا و مدل پرآشوب فرق بگذارد: فرض‌های مدل کجا هستند؟ و ستون‌های زمانی چطور چیده شده‌اند؟ در این نوشته، ادامه‌ی بهترین روش‌های مدل‌سازی مالی، فرض‌های مدل مالی و ساختار زمانی را بررسی می‌کنیم و در پایان یک عادت کوچک ولی مؤثر درباره‌ی «فضای خالی برای رشد» را معرفی می‌کنیم.

فرض‌ها: همه در یک صفحه یا کنار محاسبه؟

مدل‌سازها در این مسئله دو دسته‌اند. گروهی سرسخت‌اند و می‌خواهند همه‌ی فرض‌ها در یک صفحه‌ی مجزا باشد. گروه دیگر ترجیح می‌دهند بعضی ورودی‌ها در همان جایی باشد که محاسبه انجام می‌شود. هر دو دلیل دارند.

مزیت صفحه‌ی مستقل فرض‌ها

وقتی همه‌ی فرض‌ها یک‌جاست، بازبینی ساده‌تر است و هر کس که مدل را می‌بیند در یک نگاه می‌فهمد روی چه چیزی بنا شده است.

مزیت ورودی نزدیک به محاسبه

گاهی فرض‌ها آن‌قدر ظریف‌اند که در یک صفحه‌ی خلاصه نمی‌گنجند، یا می‌خواهید تأثیر تغییر را همان لحظه ببینید. اگر ورودی را درست کنار محاسبه بگذارید، با تغییر آن نتیجه را فوراً مشاهده می‌کنید. در عوض در صفحه‌ی جدا باید مدام اطمینان کنید که عدد تغییرکرده واقعاً به جای درست وصل شده است و این رفت‌وبرگشت زمان‌بر است.

راه میانی

یک الگوی پرکاربرد این است که ورودی‌ها را در جای مناسب نگه دارید، اما یک صفحه‌ی «خلاصه‌ی فرض‌ها» بسازید که فقط خروجی بخواند و هیچ ورودی نداشته باشد. این صفحه می‌تواند جمله‌هایی بسازد که با تغییر مدل به‌روز می‌شوند؛ مثلاً «تاریخ تقریبی بسته شدن معامله فلان تاریخ است». این‌طور هم خواننده یک‌جا همه‌ی فرض‌ها را می‌بیند، و هم سازنده منبع واحد برای تغییر دارد.

انتخاب بین این روش‌ها تا حد زیادی سلیقه‌ای است. اما اصل ثابت است: هر مدلی باید راهی داشته باشد تا هر کس بتواند فرض‌های زیربنایی را سریع بفهمد. برای بررسی اثر تغییر همین فرض‌ها، تحلیل حساسیت و برنامه‌ریزی سناریو ابزارهای مناسبی هستند.

محور زمانی یکدست

یکی از شایع‌ترین ایرادهای طراحی، مخلوط‌کردن نوع ستون‌های زمانی است. الگوی آشنا را در نظر بگیرید:

  • سه ستون ماهانه
  • بعد یک ستون فصلی
  • باز هم چند ستون ماهانه
  • در پایان یک ستون سالانه

در نگاه اول، چنین چیدمانی منطقی به نظر می‌رسد، چون می‌خواهید خلاصه‌ی نتایج را سریع ببینید. اما در بلندمدت به شما آسیب می‌زند. وقتی مدل بزرگ‌تر شود و بخواهید فرمول یا الگوی محاسبه‌ی یکسانی را در همه‌ی ستون‌ها تکرار کنید، ستون‌هایی که ماهیت متفاوتی دارند مانع می‌شوند. باید مدام آن‌ها را دور بزنید و احتمال خطا بالا می‌رود.

چیدمان درست

اگر مدل بر پایه‌ی زمان است، این ترتیب را رعایت کنید:

  1. همه‌ی ستون‌های ماهانه کنار هم
  2. بخش جدای خلاصه‌های فصلی
  3. بخش جدای خلاصه‌های سالانه

با این کار، هر ستون ماهانه دقیقاً مثل ستون قبلی رفتار می‌کند و می‌توانید منطق یکسان را در طول محور زمانی گسترش دهید.

برچسب‌گذاری دوره‌ها

وقتی ستون‌ها یکدست شدند، گام بعدی «برچسب‌گذاری» است. بالای هر ماه، سال و فصل متعلق به آن را بنویسید. حالا برای ساخت خلاصه‌ی فصلی یا سالانه، فقط لازم است داده‌های ماهانه را بر اساس همین برچسب‌ها جمع بزنید.

مزیت این روش بزرگ است:

  • مدل بسیار انعطاف‌پذیر می‌شود، چون هر نوع خلاصه‌ای را می‌توانید از همان برچسب‌ها بسازید.
  • از دغدغه‌ی «چاپ‌پذیر بودن» مدل آزاد می‌شوید؛ مدل می‌تواند صدها ردیف و ستون داشته باشد و خلاصه‌های مرتب را جای دیگری بسازید.
  • منطق مدل در یک مسیر مشخص می‌ماند و اشتباه ناشی از جابه‌جایی ستون‌ها کم می‌شود.

این همان اصل جدا کردن «مدل» از «گزارش» است که در اجزای مدل مالی هم به آن اشاره شده است.

فضای خالی برای رشد

یکی از عادت‌هایی که ساده به نظر می‌رسد، ولی بسیار مفید است، پیش‌بینی جا برای افزایش داده است. ما معمولاً می‌خواهیم مدل «قشنگ» باشد؛ یعنی فهرست را می‌نویسیم و بلافاصله پس از آخرین مورد، جمع را قرار می‌دهیم. مشکل این است که همیشه دیر یا زود یک مورد جدید اضافه می‌شود. اگر مورد جدید را زیر آخرین ردیف و بیرون از محدوده‌ی جمع بگذارید، جمع کل آن را نمی‌بیند و باید دو کار انجام دهید: داده را اضافه کنید و محدوده‌ی جمع را اصلاح کنید.

هر دو کار لازم است، و دقیقاً به همین دلیل خطا اتفاق می‌افتد: روزی یکی از آن دو را فراموش می‌کنید.

راه‌حل ساده

بین آخرین مورد و ردیف جمع، یک ردیف خالی بگذارید. این ردیف شاید کمی ظاهر مدل را کم‌زیبا کند، اما اگر موردی تازه اضافه شود، در محدوده‌ی جمع قرار می‌گیرد و بدون اقدام دیگر در مجموع محاسبه می‌شود. همین اصل را برای ستون‌ها هم می‌توان به کار برد: همیشه یک فضای خالی برای افزودن در نظر بگیرید.

خلاصه

  • فرض‌ها: باید در یک جا قابل‌مشاهده باشند، حتی اگر ورودی‌ها پراکنده باشند.
  • سازگاری: ستون‌های هم‌نوع را کنار هم و بخش‌های خلاصه را جدا نگه دارید.
  • فضای خالی: برای افزودن داده‌ی تازه جا بگذارید.

پرسش‌های متداول

آیا بهتر است فرض‌ها را در یک صفحه جدا بگذارم؟ هر دو روش کار می‌کند. مهم این است که یک نمای واحد از همه‌ی فرض‌ها داشته باشید که بدون نیاز به جست‌وجو در مدل دیده شود.

چرا نباید ماهانه و فصلی را کنار هم بگذارم؟ چون یکنواختی ستون‌ها را از بین می‌برد و گسترش منطق مدل را در طول زمان سخت و پرخطا می‌کند.

برچسب‌گذاری دوره‌ها چه فایده‌ای دارد؟ به شما اجازه می‌دهد از یک مدل ماهانه، هر خلاصه‌ی فصلی یا سالانه را بدون تغییر ساختار بسازید.

ردیف خالی واقعاً لازم است؟ اگر مطمئن باشید هرگز داده‌ی جدید اضافه نمی‌شود، نه. اما چنین مدلی تقریباً وجود ندارد.

جمع‌بندی

فرض‌ها را قابل‌مشاهده نگه دارید، ستون‌های زمانی را یکدست بچینید، دوره‌ها را برچسب بزنید و برای رشد جا بگذارید. این چهار عادت کوچک، مدل شما را انعطاف‌پذیرتر و قابل‌فهم‌تر می‌کنند. در نوشته‌ی بعد، ساختار کامل یک مدل مالی را بخش به بخش مرور می‌کنیم.